Fix intra-query memory leakage in nodeProjectSet.c.

Tom Lane <tgl@sss.pgh.pa.us>

Commit: a1c2c430d33e0945da234b025b78bd265c8bdfb5
Author: Tom Lane <tgl@sss.pgh.pa.us>
Date: 2017-10-06T18:28:42Z
Releases: 11.0
Fix intra-query memory leakage in nodeProjectSet.c.

Both ExecMakeFunctionResultSet() and evaluation of simple expressions
need to be done in the per-tuple memory context, not per-query, else
we leak data until end of query.  This is a consideration that was
missed while refactoring code in the ProjectSet patch (note that in
pre-v10, ExecMakeFunctionResult is called in the per-tuple context).

Per bug #14843 from Ben M.  Diagnosed independently by Andres and myself.

Discussion: https://postgr.es/m/20171005230321.28561.15927@wrigleys.postgresql.org

Files

PathChange+/−
src/backend/executor/execSRF.c modified +2 −0
src/backend/executor/nodeProjectSet.c modified +6 −0

Discussion