]> git.ipfire.org Git - thirdparty/postgresql.git/commit
Reset lastOverflowedXid on standby when needed
authorAlexander Korotkov <akorotkov@postgresql.org>
Sat, 6 Nov 2021 15:31:21 +0000 (18:31 +0300)
committerAlexander Korotkov <akorotkov@postgresql.org>
Sat, 6 Nov 2021 15:34:19 +0000 (18:34 +0300)
commite1fee28a0441652f021045646808a772314798f9
treea46a44229a152e2eba4a7afb7a442f587b014e72
parentbf5cdcfd5e444756378e60307a89b8cad16f65c0
Reset lastOverflowedXid on standby when needed

Currently, lastOverflowedXid is never reset.  It's just adjusted on new
transactions known to be overflowed.  But if there are no overflowed
transactions for a long time, snapshots could be mistakenly marked as
suboverflowed due to wraparound.

This commit fixes this issue by resetting lastOverflowedXid when needed
altogether with KnownAssignedXids.

Backpatch to all supported versions.

Reported-by: Stan Hu
Discussion: https://postgr.es/m/CAMBWrQ%3DFp5UAsU_nATY7EMY7NHczG4-DTDU%3DmCvBQZAQ6wa2xQ%40mail.gmail.com
Author: Kyotaro Horiguchi, Alexander Korotkov
Reviewed-by: Stan Hu, Simon Riggs, Nikolay Samokhvalov, Andrey Borodin, Dmitry Dolgov
src/backend/storage/ipc/procarray.c