-
Libing Song authored
FEATURE ======= Before this feature, acknowledgments were received in dump threads. After sending an acknowledgment request, dump threads needed to receive the acknowledgment immediately. So the following events were delayed and delaying time was depended on the network situation. All slave connections are based on TCP which is duplex. It means we can send binary events and receive acknowledgments simultaneously. In this way, binary events can be sent without delay. This worklog implement above feature. DESIGN ====== * Start/Stop ack receive thread The thread is controlled automatically by semisync master. - It is started automatically when enabling semisync master through SET rpl_semi_sync_master_enabled = ON - It is stopped automatically when disabling semisync master through SET rpl_semi_sync_master_enabled = OFF * Show ack receive thread status to performance_schema.threads - Ack receive thread status can be showed through querying performance_schema.threads table, when semisync master is on(ack thread is up). - PROCESSLIST_STATE contents 1. Waiting for semi-sync slave connection. 2. Waiting for semi-sync ACK from slave. 3. Reading semi-sync ACK from slave.
Libing Song authoredFEATURE ======= Before this feature, acknowledgments were received in dump threads. After sending an acknowledgment request, dump threads needed to receive the acknowledgment immediately. So the following events were delayed and delaying time was depended on the network situation. All slave connections are based on TCP which is duplex. It means we can send binary events and receive acknowledgments simultaneously. In this way, binary events can be sent without delay. This worklog implement above feature. DESIGN ====== * Start/Stop ack receive thread The thread is controlled automatically by semisync master. - It is started automatically when enabling semisync master through SET rpl_semi_sync_master_enabled = ON - It is stopped automatically when disabling semisync master through SET rpl_semi_sync_master_enabled = OFF * Show ack receive thread status to performance_schema.threads - Ack receive thread status can be showed through querying performance_schema.threads table, when semisync master is on(ack thread is up). - PROCESSLIST_STATE contents 1. Waiting for semi-sync slave connection. 2. Waiting for semi-sync ACK from slave. 3. Reading semi-sync ACK from slave.
Loading