postgresql/src/backend/access
Andres Freund a4d357bfbd Make HEAP_LOCK/HEAP2_LOCK_UPDATED replay reset HEAP_XMAX_INVALID.
0ac5ad5 started to compress infomask bits in WAL records. Unfortunately
the replay routines for XLOG_HEAP_LOCK/XLOG_HEAP2_LOCK_UPDATED forgot to
reset the HEAP_XMAX_INVALID (and some other) hint bits.

Luckily that's not problematic in the majority of cases, because after a
crash/on a standby row locks aren't meaningful. Unfortunately that does
not hold true in the presence of prepared transactions. This means that
after a crash, or after promotion, row level locks held by a prepared,
but not yet committed, prepared transaction might not be enforced.

Discussion: 20160715192319.ubfuzim4zv3rqnxv@alap3.anarazel.de
Backpatch: 9.3, the oldest branch on which 0ac5ad5 is present.
2016-07-15 14:45:37 -07:00
..
brin pgindent run for 9.6 2016-06-09 18:02:36 -04:00
common pgindent run for 9.6 2016-06-09 18:02:36 -04:00
gin pgindent run for 9.6 2016-06-09 18:02:36 -04:00
gist Fix GiST index build for NaN values in geometric types. 2016-07-14 18:45:59 -04:00
hash Fix building of large (bigger than shared_buffers) hash indexes. 2016-06-24 16:57:36 -04:00
heap Make HEAP_LOCK/HEAP2_LOCK_UPDATED replay reset HEAP_XMAX_INVALID. 2016-07-15 14:45:37 -07:00
index Revert CREATE INDEX ... INCLUDING ... 2016-04-08 21:52:13 +03:00
nbtree pgindent run for 9.6 2016-06-09 18:02:36 -04:00
rmgrdesc pg_visibility: Add pg_truncate_visibility_map function. 2016-06-17 17:37:30 -04:00
spgist Prevent to use magic constants 2016-04-28 16:39:25 +03:00
tablesample Update copyright for 2016 2016-01-02 13:33:40 -05:00
transam Fix start WAL filename for concurrent backups from standby 2016-07-11 12:02:31 +02:00
Makefile TABLESAMPLE, SQL Standard and extensible 2015-05-15 14:37:10 -04:00