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
Responses
pgsql-cluster-hackers by date
| Next: | From: Nicolas Barbier | Date: 2012-08-22 09:29:42 |
| Subject: Re: How to copy Datum |
| Previous: | From: Magnus Hagander | Date: 2012-08-06 09:53:19 |
| Subject: Re: postgres 9 bind address for replication |