-
- Downloads
Aggregates can be polymorphic, using polymorphic implementation functions.
It also works to create a non-polymorphic aggregate from polymorphic functions, should you want to do that. Regression test added, docs still lacking. By Joe Conway, with some kibitzing from Tom Lane.
Showing
- src/backend/catalog/pg_aggregate.c 120 additions, 22 deletionssrc/backend/catalog/pg_aggregate.c
- src/backend/commands/aggregatecmds.c 4 additions, 2 deletionssrc/backend/commands/aggregatecmds.c
- src/backend/executor/nodeAgg.c 53 additions, 24 deletionssrc/backend/executor/nodeAgg.c
- src/backend/nodes/makefuncs.c 22 additions, 1 deletionsrc/backend/nodes/makefuncs.c
- src/backend/parser/parse_agg.c 92 additions, 1 deletionsrc/backend/parser/parse_agg.c
- src/backend/parser/parse_coerce.c 75 additions, 26 deletionssrc/backend/parser/parse_coerce.c
- src/backend/utils/cache/lsyscache.c 31 additions, 1 deletionsrc/backend/utils/cache/lsyscache.c
- src/include/nodes/makefuncs.h 4 additions, 1 deletionsrc/include/nodes/makefuncs.h
- src/include/parser/parse_agg.h 9 additions, 1 deletionsrc/include/parser/parse_agg.h
- src/include/parser/parse_coerce.h 4 additions, 1 deletionsrc/include/parser/parse_coerce.h
- src/include/utils/lsyscache.h 2 additions, 1 deletionsrc/include/utils/lsyscache.h
- src/test/regress/expected/polymorphism.out 514 additions, 0 deletionssrc/test/regress/expected/polymorphism.out
- src/test/regress/parallel_schedule 1 addition, 1 deletionsrc/test/regress/parallel_schedule
- src/test/regress/serial_schedule 2 additions, 1 deletionsrc/test/regress/serial_schedule
- src/test/regress/sql/polymorphism.sql 367 additions, 0 deletionssrc/test/regress/sql/polymorphism.sql
Loading
Please register or sign in to comment