Transaction ID wraparound
Nikolay and Michael discuss transaction ID wraparound — what it is, and some ideas to minimise the risk of it ever happening to you!
Here are links to a few things we mentioned:
- The Internals of PostgreSQL chapter 5 (book by Hironobu SUZUKI)
- PostgreSQL 14 internals chapter 7 (book by Egor Rogov)
- Transaction ID Wraparound (blog post from Sentry)
- What We Learned from the Recent Mandrill Outage (blog post from Mailchimp)
- How to simulate transaction ID wraparound (blog post by Prashant Dixit)
- Add 64-bit XIDs into PostgreSQL 16 (commitfest entry)
- Partitioning (docs)
- Consider using VACUUM’s INDEX_CLEANUP option (tweet by Peter Geoghan)
- Add wraparound failsafe to VACUUM (commit)
- Do you vacuum everyday? (talk by Hannu Krosing)
- Multixacts wraparound monitoring (mailing list thread)
- Subtransactions Considered Harmful (blog post by Nikolay)
- Buffer management in PostgreSQL (talk by Alexander Korotkov)
- OrioleDB
- pageinspect
- pg_hexedit
- pg_visibility
- Visibility Map (docs)
------------------------
What did you like or not like? What should we discuss next time? Let us know by tweeting us on @samokhvalov / @michristofides / @PostgresFM, or by commenting on our Google doc.
If you would like to share this episode, here's a good link (and thank you!)
Postgres FM is brought to you by:
- Nikolay Samokhvalov, founder of Postgres.ai
- Michael Christofides, founder of pgMustard
With special thanks to:
- Jessie Draws for the amazing artwork