pg_serial early wraparound
Thomas Munro <thomas.munro@enterprisedb.com>
From: Thomas Munro <thomas.munro@enterprisedb.com>
To: Pg Hackers <pgsql-hackers@postgresql.org>
Date: 2016-11-08T22:07:42Z
Lists: pgsql-hackers
Attachments
- ssi-slru-wraparound-v1.patch (application/octet-stream) patch v1
Hi hackers, The SLRU managed by predicate.c can wrap around and overwrite data if you have more than 1 billion active XIDs. That's because when SSI was implemented, slru.c was limited to four digit segment names, which implied a page limit that wasn't enough for pg_serial to have space for every possible XID. We should probably rip that code out, because SLRUs now support five digit segment names. Something like the attached. I'll post a test script to demonstrate correct wraparound behaviour around in time for one of the later CFs. -- Thomas Munro http://www.enterprisedb.com
Commits
-
Remove obsolete SLRU wrapping and warnings from predicate.c.
- e5eb4fa87331 11.0 landed
-
Remove incorrect assertion in clog.c
- ec99dd5aee8b 10.0 cited
-
Keep track of transaction commit timestamps
- 73c986adde5d 9.5.0 cited
-
Handle 5-char filenames in SlruScanDirectory
- 638cf09e76d7 9.4.0 cited