On Wed, Jan 20, 2016 at 11:06 AM, Robert Haas <robertmh...@gmail.com> wrote: > On Wed, Jan 20, 2016 at 7:38 AM, David Rowley > <david.row...@2ndquadrant.com> wrote: >> Agreed. So I've attached a version of the patch which does not have any of >> the serialise/deserialise stuff in it. > > I re-reviewed this and have committed most of it with only minor > kibitizing. A few notes:
This commit has broken pg_dump. At least, I think this is the thread referencing this commit: commit a7de3dc5c346e07e0439275982569996e645b3c2 Author: Robert Haas <rh...@postgresql.org> Date: Wed Jan 20 13:46:50 2016 -0500 Support multi-stage aggregation. If I add an aggregate to an otherwise empty 9.4.5 database: CREATE OR REPLACE FUNCTION first_agg ( anyelement, anyelement ) RETURNS anyelement LANGUAGE sql IMMUTABLE STRICT AS $$ SELECT $1; $$; -- And then wrap an aggregate around it -- aggregates do not support create or replace, alas. CREATE AGGREGATE first ( sfunc = first_agg, basetype = anyelement, stype = anyelement ); And then run pg_dump from 9.6.this on it, I get: pg_dump: column number -1 is out of range 0..17 Segmentation fault (core dumped) Program terminated with signal 11, Segmentation fault. #0 0x0000000000416b0b in dumpAgg (fout=0x1e551e0, agginfo=0x1e65ec0) at pg_dump.c:12670 12670 if (strcmp(aggcombinefn, "-") != 0) (gdb) bt #0 0x0000000000416b0b in dumpAgg (fout=0x1e551e0, agginfo=0x1e65ec0) at pg_dump.c:12670 #1 0x000000000041df7a in main (argc=<value optimized out>, argv=<value optimized out>) at pg_dump.c:810 Cheers, Jeff -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers