pgsql: Do execGrouping.c via expression eval machinery. - Mailing list pgsql-committers

From Andres Freund
Subject pgsql: Do execGrouping.c via expression eval machinery.
Date
Msg-id E1emZ29-0007Mh-VU@gemulon.postgresql.org
Whole thread Raw
Responses Re: pgsql: Do execGrouping.c via expression eval machinery.
List pgsql-committers
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

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/773aec7aa98abd38d6d9435913bb8e14e392c274

Modified Files
--------------
src/backend/executor/execExpr.c           | 118 +++++++++++++++
src/backend/executor/execExprInterp.c     |  29 ++++
src/backend/executor/execGrouping.c       | 236 +++++++-----------------------
src/backend/executor/nodeAgg.c            | 143 +++++++++++-------
src/backend/executor/nodeGroup.c          |  24 +--
src/backend/executor/nodeRecursiveunion.c |   5 +-
src/backend/executor/nodeSetOp.c          |  48 +++---
src/backend/executor/nodeSubplan.c        |  81 +++++++++-
src/backend/executor/nodeUnique.c         |  31 ++--
src/backend/executor/nodeWindowAgg.c      |  38 +++--
src/backend/utils/adt/orderedsetaggs.c    |  56 +++----
src/include/executor/execExpr.h           |   1 +
src/include/executor/executor.h           |  28 ++--
src/include/executor/nodeAgg.h            |  12 +-
src/include/nodes/execnodes.h             |  14 +-
15 files changed, 498 insertions(+), 366 deletions(-)


pgsql-committers by date:

Previous
From: Andres Freund
Date:
Subject: Re: pgsql: Use new overflow aware integer operations.
Next
From: Andres Freund
Date:
Subject: Re: pgsql: Do execGrouping.c via expression eval machinery.