Thank you reply.
1) it have not "Starting semi-sync replication" in master's error log 

2) 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