22. Two-Phase Commit & Group Commit
- MySQL の Replication 開発者であらせられる
Dr. Mats Kindahl の blog この記事がわかりや
すいですが
- Binary Log Group Commit in MySQL 5.6
- (この後の話に関連して)大事なところを二つだ
けかいつまんで解説すると
32. WL#7083 はわかる
- WL#7592いわく
- Therefore, we need to generate a
per-transaction event also when
GTID_MODE = OFF; this is needed e.g. for
WL#7083 and WL#7165.
- WL#7083は、GTIDをオンラインで有効化する
ための修正らしいです。
- なるほどGTIDのためならしょうがない
33. しかし WL#7165 は
- WL#7165: MTS: Optimizing MTS scheduling
by increasing the parallelization window on
master
- Anonymous_gtid_log_event や
Gtid_log_event には、 MTS を最適化するため
の、 logical timestamp が埋め込まれているそ
うです
57. slave_preserve_commit_order
- blog にもありますが制限がいくつかあります
- On master
- binlog_order_commits should be enabled
- On slave
- binlog_order_commits should be enabled
- binary log should be enabled
- log_slave_update should be enabled
- slave_preserve_commit_order should be enabled
- そして LOGICAL_CLOCK 必須