Fix ExecMakeTableFunctionResult to verify that all rows returned by a SRF

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

Commit: 6107aa8ce8c4c22e37db2cb80bf9222f098a83f0
Author: Tom Lane <tgl@sss.pgh.pa.us>
Date: 2010-08-26T18:55:19Z
Releases: 8.0.26
Fix ExecMakeTableFunctionResult to verify that all rows returned by a SRF
returning "record" actually do have the same rowtype.  This is needed because
the parser can't realistically enforce that they will all have the same typmod,
as seen in a recent example from David Wheeler.

Back-patch to 8.0, which is as far back as we have the notion of RECORD
subtypes being distinguished by typmod.  Wheeler's example depends on
8.4-and-up features, but I suspect there may be ways to provoke similar
failures before 8.4.

Files

PathChange+/−
src/backend/executor/execQual.c modified +11 −1