4 ms·
> documentation also seems to suggest that even with the strongest settings, it can lose transactions; Can be reproduced even on a single node postgres. Just h
by satyanash 6y ago
> documentation also seems to suggest that even with the strongest settings, it can lose transactions;
Can be reproduced even on a single node postgres. Just hammer it with inserts and maintain a local counter for inserts performed.
Then, kill9 the postgres process. You'd expect your local counter to match the actual rows inserted, but you'll find that your counter will always be "less" than the actual rows inserted.
Like any "networked" system, it is possible to lose commit acknowledgments even if the commit itself was successful.
So yes, you've not "lost" transactions per se. You've "gained" them, but it is still a data issue in either case.
- anarazel 6y agoThe classical solution to that is to use 2PC. But often it's not worth it...
- andreareina 6y ago2PC can have unacknowledged writes: https://aphyr.com/posts/282-call-me-maybe-postgres https://aphyr.com/posts/282-call-me-maybe-postgres