3 ms·
A bunch of databases support XA transactions [1], or otherwise have generic support for 2PC that can be hooked up to an external transaction manager [2]. In th
by oftenwrong 6y ago
A bunch of databases support XA transactions [1], or otherwise have generic support for 2PC that can be hooked up to an external transaction manager [2].
In theory, we could build support into most systems. It does seem like this idea has lost momentum, though. I am not sure why.
[1] https://en.wikipedia.org/wiki/X/Open_XA https://en.wikipedia.org/wiki/X/Open_XA
[2] for example, https://www.postgresql.org/docs/13/sql-prepare-transaction.html https://www.postgresql.org/docs/13/sql-prepare-transaction.h...
- cratermoon 6y agoTwo-phase commit is out of style because everything is distributed and the Fallacies of Distributed Systems presents several reasons why the 2PC protocols spend most of their effort on error handling and recovery. Simply put, at scale, something is always failing, so a 2PC setup is always doing recovery.