postgresql/src/backend/commands
Tom Lane e275d16a54 Fix possible corruption of AfterTriggerEventLists in subtransaction rollback.
afterTriggerInvokeEvents failed to adjust events->tailfree when truncating
the last chunk of an event list.  This could result in the data being
"de-truncated" by afterTriggerRestoreEventList during a subsequent
subtransaction abort.  Even that wouldn't kill us, because the re-added data
would just be events marked DONE --- unless the data had been partially
overwritten by new events.  Then we might crash, or in any case misbehave
(perhaps fire triggers twice, or fire triggers with the wrong event data).
Per bug #5622 from Thue Janus Kristensen.

Back-patch to 8.4 where the current trigger list representation was introduced.
2010-08-19 15:46:18 +00:00
..
Makefile Support deferrable uniqueness constraints. 2009-07-29 20:56:21 +00:00
aggregatecmds.c Wrap calls to SearchSysCache and related functions using macros. 2010-02-14 18:42:19 +00:00
alter.c Standardize get_whatever_oid functions for object types with 2010-08-05 14:45:09 +00:00
analyze.c Fix ANALYZE's ancient deficiency of not trying to collect stats for expression 2010-08-01 22:38:11 +00:00
async.c Modify ShmemInitStruct and ShmemInitHash to throw errors internally, 2010-04-28 16:54:16 +00:00
cluster.c Add explicit regression tests for ALTER TABLE lock levels. 2010-07-29 11:06:34 +00:00
comment.c Standardize get_whatever_oid functions for other object types. 2010-08-05 15:25:36 +00:00
constraint.c pgindent run for 9.0 2010-02-26 02:01:40 +00:00
conversioncmds.c Standardize get_whatever_oid functions for other object types. 2010-08-05 15:25:36 +00:00
copy.c Include the backend ID in the relpath of temporary relations. 2010-08-13 20:10:54 +00:00
dbcommands.c Standardize get_whatever_oid functions for object types with 2010-08-05 14:45:09 +00:00
define.c pgindent run for 9.0 2010-02-26 02:01:40 +00:00
discard.c Update copyright for the year 2010. 2010-01-02 16:58:17 +00:00
explain.c Teach EXPLAIN to print PARAM_EXEC Params as the referenced expressions, 2010-07-13 20:57:19 +00:00
foreigncmds.c Standardize get_whatever_oid functions for object types with 2010-08-05 14:45:09 +00:00
functioncmds.c Standardize get_whatever_oid functions for other object types. 2010-08-05 15:25:36 +00:00
indexcmds.c Standardize get_whatever_oid functions for object types with 2010-08-05 14:45:09 +00:00
lockcmds.c pgindent run for 9.0 2010-02-26 02:01:40 +00:00
opclasscmds.c Standardize get_whatever_oid functions for other object types. 2010-08-05 15:25:36 +00:00
operatorcmds.c pgindent run for 9.0, second run 2010-07-06 19:19:02 +00:00
portalcmds.c Update copyright for the year 2010. 2010-01-02 16:58:17 +00:00
prepare.c Update copyright for the year 2010. 2010-01-02 16:58:17 +00:00
proclang.c Standardize get_whatever_oid functions for object types with 2010-08-05 14:45:09 +00:00
schemacmds.c Standardize get_whatever_oid functions for object types with 2010-08-05 14:45:09 +00:00
sequence.c Fix failure of "ALTER TABLE t ADD COLUMN c serial" when done by non-owner. 2010-08-18 18:35:21 +00:00
tablecmds.c Fix failure of "ALTER TABLE t ADD COLUMN c serial" when done by non-owner. 2010-08-18 18:35:21 +00:00
tablespace.c Standardize get_whatever_oid functions for object types with 2010-08-05 14:45:09 +00:00
trigger.c Fix possible corruption of AfterTriggerEventLists in subtransaction rollback. 2010-08-19 15:46:18 +00:00
tsearchcmds.c Standardize get_whatever_oid functions for other object types. 2010-08-05 15:25:36 +00:00
typecmds.c Fix failure of "ALTER TABLE t ADD COLUMN c serial" when done by non-owner. 2010-08-18 18:35:21 +00:00
user.c Standardize get_whatever_oid functions for object types with 2010-08-05 14:45:09 +00:00
vacuum.c pgindent run for 9.0 2010-02-26 02:01:40 +00:00
vacuumlazy.c pgindent run for 9.0, second run 2010-07-06 19:19:02 +00:00
variable.c Wrap calls to SearchSysCache and related functions using macros. 2010-02-14 18:42:19 +00:00
view.c Fix failure of "ALTER TABLE t ADD COLUMN c serial" when done by non-owner. 2010-08-18 18:35:21 +00:00