diff options
| author | Tom Lane <tgl@sss.pgh.pa.us> | 2007-07-01 17:45:42 +0000 |
|---|---|---|
| committer | Tom Lane <tgl@sss.pgh.pa.us> | 2007-07-01 17:45:42 +0000 |
| commit | 8f55b9a8ba6d6543c162927c29f8d06ce1cd7372 (patch) | |
| tree | e724af0344d9b4b62157b326a96a725a1bff9370 /src/backend/optimizer/plan/planner.c | |
| parent | beba73763bbe612d7635eb97a29aa6377e79fa6b (diff) | |
Avoid memory leakage when a series of subtransactions invoke AFTER triggers
that are fired at end-of-statement (as is the normal case for foreign keys,
for example). In this situation the per-subxact deferred trigger context
is always empty when subtransaction exit is reached; so we could free it,
but were not doing so, leading to an intratransaction leak of 8K or more
per subtransaction. Per off-list example from Viatcheslav Kalinin
subsequent to bug #3418 (his original bug report omitted a foreign key
constraint needed to cause this leak).
Back-patch to 8.2; prior versions were not using per-subxact contexts
for deferred triggers, so did not have this leak.
Diffstat (limited to 'src/backend/optimizer/plan/planner.c')
0 files changed, 0 insertions, 0 deletions
