Mark correctly initial slot snapshots with MVCC type when built
authorMichael Paquier <michael@paquier.xyz>
Wed, 20 Feb 2019 03:31:07 +0000 (12:31 +0900)
committerMichael Paquier <michael@paquier.xyz>
Wed, 20 Feb 2019 03:31:07 +0000 (12:31 +0900)
commit56fadbedbd2f697400b89e7b767cfa4ec67932d6
tree7e7bfe305e2bef3e64b411291440084ae690d11d
parent90cfa49003831dbea109a9f0a7924dc95c1bf1c5
Mark correctly initial slot snapshots with MVCC type when built

When building an initial slot snapshot, snapshots are marked with
historic MVCC snapshots as type with the marker field being set in
SnapBuildBuildSnapshot() but not overriden in SnapBuildInitialSnapshot().
Existing callers of SnapBuildBuildSnapshot() do not care about the type
of snapshot used, but extensions calling it actually may, as reported.

While on it, mark correctly the snapshot type when importing one.  This
is cosmetic as the field is enforced to 0.

Author: Antonin Houska
Reviewed-by: Álvaro Herrera, Michael Paquier
Discussion: https://postgr.es/m/23215.1527665193@localhost
Backpatch-through: 9.4
src/backend/replication/logical/snapbuild.c
src/backend/utils/time/snapmgr.c