postgresql/src
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
..
backend Make HEAP_LOCK/HEAP2_LOCK_UPDATED replay reset HEAP_XMAX_INVALID. 2016-07-15 14:45:37 -07:00
bin Remove reference to range mode in pg_xlogdump error 2016-07-14 15:39:01 +02:00
common pgindent run for 9.6 2016-06-09 18:02:36 -04:00
fe_utils Fix comment. 2016-05-15 17:04:01 -04:00
include Avoid invalidating all foreign-join cached plans when user mappings change. 2016-07-15 17:23:02 -04:00
interfaces Translation updates 2016-06-20 09:48:08 -04:00
makefiles Fix typos in comments and doc 2016-01-28 16:47:36 +09:00
pl Allow IMPORT FOREIGN SCHEMA within pl/pgsql. 2016-07-12 18:07:03 -04:00
port pgindent run for 9.6 2016-06-09 18:02:36 -04:00
template Remove some remains from Alpha support removal 2015-10-29 16:40:14 -04:00
test Avoid serializability errors when locking a tuple with a committed update 2016-07-15 14:17:20 -04:00
timezone Reduce stack space consumption in tzload(). 2016-07-07 11:28:17 -04:00
tools Fix TAP tests and MSVC scripts for pathnames with spaces. 2016-07-09 16:47:38 -04:00
tutorial Update copyright for 2016 2016-01-02 13:33:40 -05:00
.gitignore
DEVELOPERS
Makefile Create src/fe_utils/, and move stuff into there from pg_dump's dumputils. 2016-03-24 15:55:57 -04:00
Makefile.global.in Provide and use a makefile target to build all generated headers. 2016-07-01 15:09:02 -04:00
Makefile.shlib AIX: Link TRANSFORM modules with their dependencies. 2015-07-15 21:00:26 -04:00
bcc32.mak Autoconfiscate selection of 64-bit int type for 64-bit large object API. 2012-10-07 21:52:43 -04:00
nls-global.mk nls-global.mk: search build dir for source files, too 2016-06-07 18:55:18 -04:00
win32.mak Autoconfiscate selection of 64-bit int type for 64-bit large object API. 2012-10-07 21:52:43 -04:00