Do execGrouping.c via expression eval machinery.
authorAndres Freund <andres@anarazel.de>
Fri, 16 Feb 2018 05:55:31 +0000 (21:55 -0800)
committerAndres Freund <andres@anarazel.de>
Fri, 16 Feb 2018 05:55:31 +0000 (21:55 -0800)
commit773aec7aa98abd38d6d9435913bb8e14e392c274
tree149ffe4c29433a85e84e128eb47aa22f3b388853
parent51db0d18fbf58b0c2e5ebc2b5b2c48daf45c8d93
Do execGrouping.c via expression eval machinery.

This has a performance benefit on own, although not hugely so. The
primary benefit is that it will allow for to JIT tuple deforming and
comparator invocations.

Author: Andres Freund
Discussion: https://postgr.es/m/20171129080934.amqqkke2zjtekd4t@alap3.anarazel.de
15 files changed:
src/backend/executor/execExpr.c
src/backend/executor/execExprInterp.c
src/backend/executor/execGrouping.c
src/backend/executor/nodeAgg.c
src/backend/executor/nodeGroup.c
src/backend/executor/nodeRecursiveunion.c
src/backend/executor/nodeSetOp.c
src/backend/executor/nodeSubplan.c
src/backend/executor/nodeUnique.c
src/backend/executor/nodeWindowAgg.c
src/backend/utils/adt/orderedsetaggs.c
src/include/executor/execExpr.h
src/include/executor/executor.h
src/include/executor/nodeAgg.h
src/include/nodes/execnodes.h