Thread: pgsql: Add parallel query support functions for assorted aggregates.

pgsql: Add parallel query support functions for assorted aggregates.

From
Robert Haas
Date:
Add parallel query support functions for assorted aggregates.

This lets us use parallel aggregate for a variety of useful cases
that didn't work before, like sum(int8), sum(numeric), several
versions of avg(), and various other functions.

Add some regression tests, as well, testing the general sanity of
these and future catalog entries.

David Rowley, reviewed by Tomas Vondra, with a few further changes
by me.

Branch
------
master

Details
-------
http://git.postgresql.org/pg/commitdiff/11c8669c0cc7abc7a7702594cf13452c378d2517

Modified Files
--------------
src/backend/utils/adt/numeric.c                | 860 +++++++++++++++++++++++++
src/backend/utils/adt/timestamp.c              |  49 ++
src/include/catalog/catversion.h               |   2 +-
src/include/catalog/pg_aggregate.h             | 108 ++--
src/include/catalog/pg_proc.h                  |  28 +
src/include/utils/builtins.h                   |  13 +
src/include/utils/timestamp.h                  |   1 +
src/test/regress/expected/create_aggregate.out |  91 ++-
src/test/regress/expected/opr_sanity.out       |  97 ++-
src/test/regress/sql/create_aggregate.sql      |  85 ++-
src/test/regress/sql/opr_sanity.sql            |  62 +-
11 files changed, 1317 insertions(+), 79 deletions(-)