Details
-
Bug
-
Status: Closed (View Workflow)
-
Major
-
Resolution: Fixed
-
N/A
Description
The documentation about STOP SLAVE says the following:
If there is only one master, or the default master (as specified by the default_master_connection system variable) is intended, connection_name can be omitted. If provided, the STOP SLAVE statement will apply to the specified master. connection_name is case-insensitive.
https://mariadb.com/kb/en/mariadb/stop-slave/
Let's say that I have the following slave configured:
MariaDB [(none)]> show all slaves status\G
|
*************************** 1. row ***************************
|
Connection_name: 172-31-19-192
|
Slave_SQL_State: Slave has read all relay log; waiting for the slave I/O thread to update it
|
Slave_IO_State: Waiting for master to send event
|
Master_Host: 172.31.19.192
|
Master_User: repl
|
Master_Port: 3306
|
Connect_Retry: 60
|
Master_Log_File: mariadb-bin.000002
|
Read_Master_Log_Pos: 3085
|
Relay_Log_File: ip-172-31-22-174-relay-bin-172@002d31@002d19@002d192.000002
|
Relay_Log_Pos: 2530
|
Relay_Master_Log_File: mariadb-bin.000002
|
Slave_IO_Running: Yes
|
Slave_SQL_Running: Yes
|
Replicate_Do_DB:
|
Replicate_Ignore_DB:
|
Replicate_Do_Table:
|
Replicate_Ignore_Table:
|
Replicate_Wild_Do_Table:
|
Replicate_Wild_Ignore_Table:
|
Last_Errno: 0
|
Last_Error:
|
Skip_Counter: 0
|
Exec_Master_Log_Pos: 3085
|
Relay_Log_Space: 2865
|
Until_Condition: None
|
Until_Log_File:
|
Until_Log_Pos: 0
|
Master_SSL_Allowed: No
|
Master_SSL_CA_File:
|
Master_SSL_CA_Path:
|
Master_SSL_Cert:
|
Master_SSL_Cipher:
|
Master_SSL_Key:
|
Seconds_Behind_Master: 0
|
Master_SSL_Verify_Server_Cert: No
|
Last_IO_Errno: 0
|
Last_IO_Error:
|
Last_SQL_Errno: 0
|
Last_SQL_Error:
|
Replicate_Ignore_Server_Ids:
|
Master_Server_Id: 1
|
Master_SSL_Crl:
|
Master_SSL_Crlpath:
|
Using_Gtid: Slave_Pos
|
Gtid_IO_Pos: 1-1-10,2-2-6
|
Replicate_Do_Domain_Ids:
|
Replicate_Ignore_Domain_Ids:
|
Parallel_Mode: conservative
|
Retried_transactions: 0
|
Max_relay_log_size: 1073741824
|
Executed_log_entries: 52
|
Slave_received_heartbeats: 0
|
Slave_heartbeat_period: 1800.000
|
Gtid_Slave_Pos: 1-1-10,2-2-6
|
1 row in set (0.00 sec)
|
According to the documentation, I should be able to stop this slave by simply executing STOP SLAVE with no connection_name since there is only one master configured. However, this does not work:
MariaDB [(none)]> STOP SLAVE;
|
Query OK, 0 rows affected, 1 warning (0.00 sec)
|
|
|
MariaDB [(none)]> SHOW WARNINGS;
|
+-------+------+--------------------------------+
|
| Level | Code | Message |
|
+-------+------+--------------------------------+
|
| Note | 1255 | Slave already has been stopped |
|
+-------+------+--------------------------------+
|
1 row in set (0.00 sec)
|
|
|
MariaDB [(none)]> show all slaves status\G
|
*************************** 1. row ***************************
|
Connection_name: 172-31-19-192
|
Slave_SQL_State: Slave has read all relay log; waiting for the slave I/O thread to update it
|
Slave_IO_State: Waiting for master to send event
|
Master_Host: 172.31.19.192
|
Master_User: repl
|
Master_Port: 3306
|
Connect_Retry: 60
|
Master_Log_File: mariadb-bin.000002
|
Read_Master_Log_Pos: 3085
|
Relay_Log_File: ip-172-31-22-174-relay-bin-172@002d31@002d19@002d192.000002
|
Relay_Log_Pos: 2530
|
Relay_Master_Log_File: mariadb-bin.000002
|
Slave_IO_Running: Yes
|
Slave_SQL_Running: Yes
|
Replicate_Do_DB:
|
Replicate_Ignore_DB:
|
Replicate_Do_Table:
|
Replicate_Ignore_Table:
|
Replicate_Wild_Do_Table:
|
Replicate_Wild_Ignore_Table:
|
Last_Errno: 0
|
Last_Error:
|
Skip_Counter: 0
|
Exec_Master_Log_Pos: 3085
|
Relay_Log_Space: 2865
|
Until_Condition: None
|
Until_Log_File:
|
Until_Log_Pos: 0
|
Master_SSL_Allowed: No
|
Master_SSL_CA_File:
|
Master_SSL_CA_Path:
|
Master_SSL_Cert:
|
Master_SSL_Cipher:
|
Master_SSL_Key:
|
Seconds_Behind_Master: 0
|
Master_SSL_Verify_Server_Cert: No
|
Last_IO_Errno: 0
|
Last_IO_Error:
|
Last_SQL_Errno: 0
|
Last_SQL_Error:
|
Replicate_Ignore_Server_Ids:
|
Master_Server_Id: 1
|
Master_SSL_Crl:
|
Master_SSL_Crlpath:
|
Using_Gtid: Slave_Pos
|
Gtid_IO_Pos: 1-1-10,2-2-6
|
Replicate_Do_Domain_Ids:
|
Replicate_Ignore_Domain_Ids:
|
Parallel_Mode: conservative
|
Retried_transactions: 0
|
Max_relay_log_size: 1073741824
|
Executed_log_entries: 52
|
Slave_received_heartbeats: 0
|
Slave_heartbeat_period: 1800.000
|
Gtid_Slave_Pos: 1-1-10,2-2-6
|
1 row in set (0.00 sec)
|
Is the documentation incorrect, or is there a problem with the implementation?