Semi-sync topology
在一些环境中,不仅控制半同步复制副本的数量很重要,还要控制副本是半同步还是异步。orchestrator可以检测到不希望的半同步配置,并切换半同步标志rpl_semi_sync_slave_enabled和rpl_semi_sync_master_enabled以纠正情况。
Semi-sync master (rpl_semi_sync_master_enabled
)
在主故障切换(例如 DeadMaster)期间,如果 DetectSemiSyncEnforcedQuery 对新主返回的值 > 0,orchestrator 会启用半同步主标志。如果主标志被其他方式更改或错误设置,orchestrator 将不触发任何恢复。
半同步主可能会遇到两种故障情况:LockedSemiSyncMaster 和 MasterWithTooManySemiSyncReplicas。在这两种条件的任一恢复期间,orchestrator 会在半同步复制副本上禁用半同步主标志。
Semi-sync replicas (rpl_semi_sync_slave_enabled
)
orchestrator能够检测拓扑中是否存在不正确数量的半同步复制副本(LockedSemiSyncMaster 和 MasterWithTooManySemiSyncReplicas),然后通过相应地启用/禁用半同