]> granicus.if.org Git - postgresql/commit
Fix xmin/xmax horizon computation during logical decoding initialization.
authorAndres Freund <andres@anarazel.de>
Thu, 13 Nov 2014 18:06:43 +0000 (19:06 +0100)
committerAndres Freund <andres@anarazel.de>
Thu, 13 Nov 2014 19:34:51 +0000 (20:34 +0100)
commitda668a5d8f92af33d1f01b20993f4e1cf3735973
tree19e49560e7ccf9b524d7a3fb03de154232c44c1c
parent8fc23a9ed0a040d039431ef79b1bf166395ed180
Fix xmin/xmax horizon computation during logical decoding initialization.

When building the initial historic catalog snapshot there were
scenarios where snapbuild.c would use incorrect xmin/xmax values when
starting from a xl_running_xacts record. The values used were always a
bit suspect, but happened to be correct in the easy to test
cases. Notably the values used when the the initial snapshot was
computed while no other transactions were running were correct.

This is likely to be the cause of the occasional buildfarm failures on
animals markhor and tick; but it's quite possible to reproduce
problems without CLOBBER_CACHE_ALWAYS.

Backpatch to 9.4, where logical decoding was introduced.
src/backend/replication/logical/snapbuild.c