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: [email protected] Backpatch: 9.3, the oldest branch on which 0ac5ad5 is present. Branch ------ REL9_3_STABLE Details ------- http://git.postgresql.org/pg/commitdiff/46acbeb2f09c862bae5056d34473223764ff99b0 Modified Files -------------- src/backend/access/heap/heapam.c | 4 ++++ 1 file changed, 4 insertions(+) -- Sent via pgsql-committers mailing list ([email protected]) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-committers
