aboutsummaryrefslogtreecommitdiff
path: root/src/backend/access/transam/multixact.c
diff options
context:
space:
mode:
authorMichael Paquier <michael@paquier.xyz>2023-10-17 14:36:04 +0900
committerMichael Paquier <michael@paquier.xyz>2023-10-17 14:36:21 +0900
commitd6b0c2bcb1b604e919b15a32c1aeb981bfae4d51 (patch)
tree0d166c7204d0aaac1eaf4d5da8ce98fc76944652 /src/backend/access/transam/multixact.c
parent6fcaeb0ea26b963b0ca13ce6078df4c2c3135aa3 (diff)
downloadpostgresql-d6b0c2bcb1b604e919b15a32c1aeb981bfae4d51.tar.gz
postgresql-d6b0c2bcb1b604e919b15a32c1aeb981bfae4d51.zip
Improve truncation of pg_serial/, removing "apparent wraparound" LOGs
It is possible that the tail XID of pg_serial/ gets ahead of its head XID, which would cause the truncation of pg_serial/ done during checkpoints to show up as a "wraparound" LOG in SimpleLruTruncate(), which is confusing. This also wastes a bit of disk space until the head page is reclaimed again. CheckPointPredicate() is changed so as the cutoff page for the truncation is switched to the head page if the tail XID has advanced beyond the head XID, rather than the tail page. This prevents the confusing LOG message about a wraparound while allowing some truncation to be done to cut in disk space. This could be considered as a bug fix, but the original behavior is harmless as well, resulting only in disk space temporarily wasted, so no backpatch is done. Author: Sami Imseih Reviewed-by: Heikki Linnakangas, Michael Paquier Discussion: https://postgr.es/m/755E19CA-D02C-4A4C-80D3-74F775410C48@amazon.com
Diffstat (limited to 'src/backend/access/transam/multixact.c')
0 files changed, 0 insertions, 0 deletions