Thank you reply.1) it have not "Starting semi-sync replication" in master's error log2) slave1 : 10.1.0.62 (serverid = 62), slave2 : 10.1.0.63 (serverid = 63)on two slaves, all set rpl_semi_sync_master_enabled = on and log_slave_updates=on,but after modify /etc/my.cnf , add rpl_semi_sync_master_enabled = off and restart mariadb.after restart slave1 10.1.0.62 , master error log:2017-03-28 18:03:05 140466955438848 [ERROR] Read semi-sync reply network error: (errno: 1158)2017-03-28 18:03:05 140466955438848 [Note] Stop semi-sync binlog_dump to slave (server_id: 62)2017-03-28 18:03:59 140469134961408 [Note] Start semi-sync binlog_dump to slave (server_id: 62), pos(mysql-bin.021937, 4)after restart slave2 10.1.0.63 , master error log:2017-03-28 18:07:07 140469136173824 [ERROR] Read semi-sync reply network error: (errno: 1158)2017-03-28 18:07:07 140469136173824 [Note] Stop semi-sync binlog_dump to slave (server_id: 63)2017-03-28 18:09:14 140467881470720 [Note] Start semi-sync binlog_dump to slave (server_id: 63), pos(mysql-bin.021937, 4)on master: SHOW GLOBAL STATUS LIKE '%semi%' ;Rpl_semi_sync_master_clients 1--2017-03-28 7:36 GMT+08:00 Pavel Ivanov <pivanof@google.com>:Could it be that your slaves are periodically disconnecting from the
master and then reconnecting again, and you just happened to catch a
state when only one slave is connected when you queried for
Rpl_semi_sync_master_clients status? To confirm or deny this you
should look at the master's error log to see if there are periodically
repeating messages "Starting semi-sync replication".
Regarding your config: your email suggests that you have
rpl_semi_sync_master_enabled set to ON on slaves. Is that really true?
Such setting on the slaves will probably work only if
log_slave_updates is set to OFF. Is it set to OFF on your slaves? If
not then you should set rpl_semi_sync_master_enabled to OFF on the
slaves to not make them wait for their slaves (which don't exist) to
ack the commits.
> ______________________________
On Fri, Mar 24, 2017 at 3:02 AM, Ljr Yang <dbmsprog@gmail.com> wrote:
> HI,
> we have many groups master slave , used semi-sync are normal.
> but there a group master and slave , semi-sync status show have a little
> question.
>
> master: 10.1.0.61 (MariaDB 10.1.22)
> slave1 : 10.1.0.62 (MariaDB 10.1.22)
> slave2: 10.1.0.63 (MariaDB 10.1.22)
>
> three machine's semi-sync parameter:
> rpl_semi_sync_master_enabled ON
> rpl_semi_sync_master_timeout 10000
> rpl_semi_sync_master_wait_point AFTER_COMMIT
> rpl_semi_sync_slave_enabled ON
>
>
> on master: SHOW GLOBAL STATUS LIKE '%semi%' ;
> Rpl_semi_sync_master_clients 1 # should show : 2
> ......
>
> on slave1: stop slave io_thread;
> then on master: SHOW GLOBAL STATUS LIKE '%semi%' ;
> Rpl_semi_sync_master_clients 0
>
> on slave1: start slave io_thread;
> on master: SHOW GLOBAL STATUS LIKE '%semi%' ;
> Rpl_semi_sync_master_clients 1
>
>
> on slave2: stop slave io_thread;
> then on master: SHOW GLOBAL STATUS LIKE '%semi%' ;
> Rpl_semi_sync_master_clients 0
>
> on slave2: start slave io_thread;
> on master: SHOW GLOBAL STATUS LIKE '%semi%' ;
> Rpl_semi_sync_master_clients 1
>
>
> on slave1 and slave2 , I had uninstall and reinstall semi-sync plugin,
> still show Rpl_semi_sync_master_clients is 1
>
> I don't know where config have question? please you help, thanks
>
>
>
_________________
> Mailing list: https://launchpad.net/~maria-discuss
> Post to : maria-discuss@lists.launchpad.net
> Unsubscribe : https://launchpad.net/~maria-discuss
> More help : https://help.launchpad.net/ListHelp
>
Ljr