开发者

Mysql XA Isolation Level

Does anyon开发者_如何学运维e know why Mysql requires serializable isolation level to achieve ACID properties with XA transactions or what would be lost if you used repeatable read and XA?

However, for a distributed transaction, you must use the SERIALIZABLE isolation level to achieve ACID properties. It is enough to use REPEATABLE READ for a nondistributed transaction, but not for a distributed transaction.

http://dev.mysql.com/doc/refman/5.6/en/xa.html


I believe it has to do with the nature of REPEATABLE READ and the limitations of XA in the mysql engine (MySQL is not fully compliant with the XA spec).

A known issue is that certain crash scenarios with replication can cause a transaction to be absent from the binlog: From: Restrictions on XA Transactions

With the above, Consistency in ACID is lost.

I assume that the strict behavior forced by SERIALIZABLE mitigates this to the extent required with how they describe the xid etc. working. But elaboration on these issues is suspiciously absent. Mysql 5.6 - Consistent Read

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜