Spec-Zone .ru
спецификации, руководства, описания, API
|
Поддержка транзакции XA ограничивается InnoDB
механизм хранения.
Для "внешнего XA," сервер MySQL действует как
Менеджер ресурсов и клиентское действие программ как Менеджеры транзакций. Для "Внутреннего XA", механизмы хранения в пределах действия сервера MySQL
столь же СРЕДНЕКВАДРАТИЧЕСКОГО, и сам сервер действуют как ТМ. Внутренняя поддержка XA ограничивается
возможностями отдельных механизмов хранения. Внутренний XA требуется для того, чтобы обработать транзакции XA,
которые включают больше чем один механизм хранения. Реализация внутреннего XA требует, чтобы механизм хранения
поддерживал двухфазную фиксацию на табличном уровне обработчика, и в настоящий момент это - истина только для
InnoDB
.
Для XA START
, JOIN
и RESUME
пункты не поддерживаются.
Для XA END
, SUSPEND [FOR MIGRATE]
пункт не
поддерживается.
Требование, что bqual
часть xid
значение отличаться для каждой транзакции XA в пределах глобальной
транзакции является ограничением текущей реализации MySQL XA. Это не часть спецификации XA.
Если транзакция XA достигла PREPARED
состояние и сервер MySQL уничтожаются
(например, с уничтожением-9 на Unix) или завершают работу неправильно,
транзакция может продолжаться после перезапусков сервера. Однако, если клиент будет повторно соединять и будет
фиксировать транзакцию, то транзакция будет отсутствовать в двоичном журнале даже при том, что это
фиксировалось. Это означает, что данные и двоичный журнал вышли из синхронии. Импликация - то, что XA не может
использоваться безопасно вместе с репликацией.
Возможно, что сервер будет откатывать ожидание транзакция XA, даже тот, который достиг PREPARED
состояние. Это происходит, если клиентское соединение завершается, и сервер продолжает работать, или если
клиенты соединяются, и сервер завершает работу корректно. (В последнем случае сервер отмечает каждое соединение,
которое будет завершено, и затем откатывает PREPARED
Транзакция XA связалась с
этим.) Должно быть возможно фиксировать или откатывать a PREPARED
Транзакция XA, но
это не может быть сделано без изменений к двоичному механизму журналирования.