]> granicus.if.org Git - postgresql/commit
Redesign API presented by nodeAgg.c for ordered-set and similar aggregates.
authorTom Lane <tgl@sss.pgh.pa.us>
Thu, 3 Jul 2014 22:25:33 +0000 (18:25 -0400)
committerTom Lane <tgl@sss.pgh.pa.us>
Thu, 3 Jul 2014 22:25:33 +0000 (18:25 -0400)
commit6f5034eda05c4946b65858fb8831d069f2873083
tree8ac64a846b70972600beed86f85291ef21567529
parent8b6010b8350a1756cd85595705971df81b5ffc07
Redesign API presented by nodeAgg.c for ordered-set and similar aggregates.

The previous design exposed the input and output ExprContexts of the
Agg plan node, but work on grouping sets has suggested that we'll regret
doing that.  Instead provide more narrowly-defined APIs that can be
implemented in multiple ways, namely a way to get a short-term memory
context and a way to register an aggregate shutdown callback.

Back-patch to 9.4 where the bad APIs were introduced, since we don't
want third-party code using these APIs and then having to change in 9.5.

Andrew Gierth
src/backend/executor/nodeAgg.c
src/backend/utils/adt/orderedsetaggs.c
src/include/fmgr.h