Received: from maia.hub.org (unknown [200.46.204.183]) by mail.postgresql.org (Postfix) with ESMTP id DF5CC63366A for ; Sat, 20 Jun 2009 15:45:30 -0300 (ADT) Received: from mail.postgresql.org ([200.46.204.86]) by maia.hub.org (mx1.hub.org [200.46.204.183]) (amavisd-maia, port 10024) with ESMTP id 98107-06 for ; Sat, 20 Jun 2009 15:45:29 -0300 (ADT) Received: from cvs.postgresql.org (cvs.postgresql.org [217.196.146.206]) by mail.postgresql.org (Postfix) with ESMTP id AB4256332E5 for ; Sat, 20 Jun 2009 15:45:29 -0300 (ADT) Received: by cvs.postgresql.org (Postfix, from userid 1007) id 6872875331E; Sat, 20 Jun 2009 18:45:28 +0000 (UTC) MIME-Version: 1.0 To: pgsql-committers@postgresql.org Subject: pgsql: Fix things so that array_agg_finalfn does not modify or free its X-Mailer: activitymail 1.24, http://search.cpan.org/dist/activitymail/ Content-Type: text/plain Message-Id: <20090620184528.6872875331E@cvs.postgresql.org> Date: Sat, 20 Jun 2009 18:45:28 +0000 (UTC) From: tgl@postgresql.org (Tom Lane) X-Virus-Scanned: Maia Mailguard 1.0.1 X-Spam-Status: No, hits=0 tagged_above=0 required=5 tests=none X-Spam-Level: X-Archive-Number: 200906/260 X-Sequence-Number: 37464 Log Message: ----------- Fix things so that array_agg_finalfn does not modify or free its input ArrayBuildState, per trouble report from Merlin Moncure. By adopting this fix, we are essentially deciding that aggregate final-functions should not modify their inputs ever. Adjust documentation and comments to match that conclusion. Modified Files: -------------- pgsql/doc/src/sgml: xaggr.sgml (r1.37 -> r1.38) (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/doc/src/sgml/xaggr.sgml?r1=1.37&r2=1.38) pgsql/src/backend/executor: nodeWindowAgg.c (r1.5 -> r1.6) (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/executor/nodeWindowAgg.c?r1=1.5&r2=1.6) pgsql/src/backend/utils/adt: array_userfuncs.c (r1.30 -> r1.31) (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/utils/adt/array_userfuncs.c?r1=1.30&r2=1.31) arrayfuncs.c (r1.157 -> r1.158) (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/utils/adt/arrayfuncs.c?r1=1.157&r2=1.158)