Fix parallel-safety code for parallel aggregation.
has_parallel_hazard() was ignoring the proparallel markings for
aggregates, which is no good. Fix that. There was no way to mark
an aggregate as actually being parallel-safe, either, so add a
PARALLEL option to CREATE AGGREGATE.
Patch by me, reviewed by David Rowley.
Branch
------
master
Details
-------
http://git.postgresql.org/pg/commitdiff/41ea0c23761ca108e2f08f6e3151e3cb1f9652a1
Modified Files
--------------
doc/src/sgml/ref/create_aggregate.sgml | 9 +++++++++
src/backend/catalog/pg_aggregate.c | 5 +++--
src/backend/commands/aggregatecmds.c | 21 ++++++++++++++++++++-
src/backend/commands/functioncmds.c | 5 ++---
src/backend/optimizer/util/clauses.c | 7 +++++++
src/include/catalog/pg_aggregate.h | 3 ++-
src/test/regress/expected/create_aggregate.out | 12 ++++++++++--
src/test/regress/sql/create_aggregate.sql | 12 ++++++++++--
8 files changed, 63 insertions(+), 11 deletions(-)