diff options
author | Ashutosh Bapat | 2011-06-27 06:35:43 +0000 |
---|---|---|
committer | Ashutosh Bapat | 2011-06-27 06:35:43 +0000 |
commit | 805bb9aeb9aeddc8db1283e4724c108941785e8b (patch) | |
tree | fd5a7706bca65ebe22ea3721c799c0918b0c38d6 /src/backend/access/gist/gistvacuum.c | |
parent | ff7be6e332b36fc7aad99876bf107e258264a7f1 (diff) |
For every aggregate, we expect that the collection function is such that, it
being applied on the transition results from datanode, should produce the same
result as that produced by only transition function being applied on all
qualifying rows. This condition allows us to apply final function directly on
transition result (in case transition phase takes place on coordinator) or
collection result (in case transition phase takes place on datanodes and
collection phase is applied on the coordinator), producing same aggregation
results at the end. This also means that, on a given node (data or coordinator)
only one of the transition or collection phases is applied not both. Hence, we
don't need to apply collection after transition, when transition phase takes
place on coordinator. This also renders aggcollecttype from pg_aggregate
useless, hence removed the column aggcollecttype from catalog pg_aggregate. The
input and output type of collection phase is aggtranstype.
There is no need for separate collecttypeLen and collecttypeByVal members in
AggStatePerAggData, that purpose is served by transtypeLen and transtypeByVal
Diffstat (limited to 'src/backend/access/gist/gistvacuum.c')
0 files changed, 0 insertions, 0 deletions