]> granicus.if.org Git - postgresql/commit
Fix unsafe memory management in CloneRowTriggersToPartition().
authorTom Lane <tgl@sss.pgh.pa.us>
Mon, 3 Jun 2019 20:59:16 +0000 (16:59 -0400)
committerTom Lane <tgl@sss.pgh.pa.us>
Mon, 3 Jun 2019 20:59:26 +0000 (16:59 -0400)
commiteaf0292c3ba7acac2735f99a8988bd49a26112f5
treecda7d40cd2c0bef2c692c7d400a36a2f0e8bebda
parent05d36b68ed011d112ee287b1fedd981c73a48f85
Fix unsafe memory management in CloneRowTriggersToPartition().

It's not really supported to call systable_getnext() in a different
memory context than systable_beginscan() was called in, and it's
*definitely* not safe to do so and then reset that context between
calls.  I'm not very clear on how this code survived
CLOBBER_CACHE_ALWAYS testing ... but Alexander Lakhin found a case
that would crash it pretty reliably.

Per bug #15828.  Fix, and backpatch to v11 where this code came in.

Discussion: https://postgr.es/m/15828-f6ddd7df4852f473@postgresql.org
src/backend/commands/tablecmds.c