aboutsummaryrefslogtreecommitdiff
path: root/src/backend/executor/execParallel.c
diff options
context:
space:
mode:
authorAndres Freund <andres@anarazel.de>2016-07-15 14:37:06 -0700
committerAndres Freund <andres@anarazel.de>2016-07-15 14:45:37 -0700
commita4d357bfbd56bd876817fb74f46525dbb3184bc2 (patch)
tree1837d665e71b40de95f9c45c1a5cff58665d33ab /src/backend/executor/execParallel.c
parent45639a0525a58a2700cf46d4c934d6de78349dac (diff)
downloadpostgresql-a4d357bfbd56bd876817fb74f46525dbb3184bc2.tar.gz
postgresql-a4d357bfbd56bd876817fb74f46525dbb3184bc2.zip
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.
Diffstat (limited to 'src/backend/executor/execParallel.c')
0 files changed, 0 insertions, 0 deletions