How to copy Datum

Поиск
Список
Период
Сортировка
От Wang, Chaoyong
Тема How to copy Datum
Дата
Msg-id 95FA8B25DB5E2D4E889EB9BEB6A6406F3CACD6@CORPUSMX30B.corp.emc.com
обсуждение исходный текст
Список pgsql-general

Hi,

 

I’m trying to reduce the re-computing of window aggregation. Here the AVG function for example.

 

The original window aggregation’s transition value(transValue) of AVG is an ArrayType, that contains two main values(sum, count).

 

Now, I’m using a temporary transition value (tempTransValue), and I need to copy tempTransValue to the original window aggregation’s transition value(transValue).

 

I used the function datumCopy as following:

peraggstate->transValue = datumCopy(peraggstate->tempTransValue, peraggstate->transtypeByVal, peraggstate->transtypeLen);

 

But when the copied transValue is passed to the invoke function, here is int4_avg_accum, the ArrayType returned from PG_GETARG_ARRAYTYPE_P(0) is null.

Which means the copy action is failed.

 

Anybody know why? Or give me some suggestions? Thanks very much.

 

 

Best Regards

Chaoyong Wang

В списке pgsql-general по дате отправления:

Предыдущее
От: Pavel Stehule
Дата:
Сообщение: Re: Are there any options to parallelize queries?
Следующее
От: Sam Ross
Дата:
Сообщение: Estimated rows question