Description:
Setting rpl_semi_sync_master_enabled=ON without any connected slaves will cause the next commit with "Timeout waiting for reply of binlog"message in mysql log.
[Warning] Timeout waiting for reply of binlog (file: mysql-bin.000001, pos: 4503), semi-sync up to file , position 0.
How to repeat:
stop all slave threads on replicas:
ON MASTER
my.cnf
log_bin = mysql-bin.log
server_id = 1
master [localhost] {root} (test) > INSTALL PLUGIN rpl_semi_sync_master SONAME 'semisync_master.so';
Query OK, 0 rows affected (0.02 sec)
master [localhost] {root} (test) > show variables like 'rpl_semi_sync_master_enabled';
+------------------------------+-------+
| Variable_name | Value |
+------------------------------+-------+
| rpl_semi_sync_master_enabled | OFF |
+------------------------------+-------+
1 row in set (0.01 sec)
master [localhost] {root} (test) > SET GLOBAL rpl_semi_sync_master_enabled='ON';
Query OK, 0 rows affected (0.00 sec)
master [localhost] {root} (test) > create user 'test'@'localhost' IDENTIFIED BY 'testing';
Query OK, 0 rows affected (10.01 sec)
mysql log:
Version: '5.7.31-log' socket: '/tmp/mysql_sandbox23006.sock' port: 23006 MySQL Community Server (GPL)
2020-10-22T12:51:42.856150Z 4 [Note] Start binlog_dump to master_thread_id(4) slave_server(101), pos(, 4)
2020-10-22T12:51:43.177206Z 5 [Note] Start binlog_dump to master_thread_id(5) slave_server(102), pos(, 4)
2020-10-22T13:09:42.866761Z 4 [Note] Stop asynchronous binlog_dump to slave (server_id: 101)
2020-10-22T13:09:42.866915Z 4 [Note] Aborted connection 4 to db: 'unconnected' user: 'rsandbox' host: 'localhost' (failed on flush_net())
2020-10-22T13:09:43.190184Z 5 [Note] Stop asynchronous binlog_dump to slave (server_id: 102)
2020-10-22T13:09:43.190364Z 5 [Note] Aborted connection 5 to db: 'unconnected' user: 'rsandbox' host: 'localhost' (failed on flush_net())
2020-10-22T13:09:59.444288Z 6 [Note] Semi-sync replication initialized for transactions.
2020-10-22T13:09:59.444384Z 6 [Note] Semi-sync replication enabled on the master.
2020-10-22T13:09:59.444662Z 0 [Note] Starting ack receiver thread
2020-10-22T13:10:20.388814Z 6 [Warning] Timeout waiting for reply of binlog (file: mysql-bin.000001, pos: 4503), semi-sync up to file , position 0.
2020-10-22T13:10:20.388845Z 6 [Note] Semi-sync replication switched OFF.