Re: snapshot too old issues, first around wraparound and then more.
Tom Lane <tgl@sss.pgh.pa.us>
From: Tom Lane <tgl@sss.pgh.pa.us>
To: Stephen Frost <sfrost@snowman.net>
Cc: Greg Stark <stark@mit.edu>, Peter Geoghegan <pg@bowt.ie>,
Noah Misch <noah@leadboat.com>, Robert Haas <robertmhaas@gmail.com>,
Thomas Munro <thomas.munro@gmail.com>,
Andres Freund <andres@anarazel.de>,
"pgsql-hackers@postgresql.org" <pgsql-hackers@postgresql.org>,
Kevin Grittner <kgrittn@gmail.com>
Date: 2021-06-16T17:04:07Z
Lists: pgsql-hackers
Stephen Frost <sfrost@snowman.net> writes: > I've long felt that the appropriate approach to addressing that is to > improve on VACUUM and find a way to do better than just having the > conditional of 'xmax < global min' drive if we can mark a given tuple as > no longer visible to anyone. Yeah, I think this scenario of a few transactions with old snapshots and the rest with very new ones could be improved greatly if we exposed more info about backends' snapshot state than just "oldest xmin". But that might be expensive to do. I remember that Heikki was fooling with a patch that reduced snapshots to LSNs. If we got that done, it'd be practical to expose complete info about backends' snapshot state in a lot of cases (i.e., anytime you had less than N live snapshots). Of course, there's still the question of how VACUUM could cheaply apply such info to decide what could be purged. regards, tom lane
Commits
-
Remove the "snapshot too old" feature.
- f691f5b80a85 17.0 landed
-
Improve timeout.c's handling of repeated timeout set/cancel.
- 09cf1d522676 14.0 cited
-
Fix two bugs in MaintainOldSnapshotTimeMapping.
- 55b7e2f4d78d 14.0 cited