Slave hangs when using MASTER_DELAY and parallel replication
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Percona Server moved to https://jira.percona.com/projects/PS |
Expired
|
Undecided
|
Unassigned |
Bug Description
I have set
CHANGE MASTER TO MASTER_DELAY=1800;
slave_parallel_
slave_parallel_
relay_log_
Just after a relay log rotation, the slave hangs with this message "Slave_
$ mysql -e 'show slave status \G'
*******
Replicate
Replicate_
Master_
Replicate_
Slave_
Last_
Last_
1fd82bbe-
a9999f14-
df922a0a-
f8f6d241-
When I run
mysql> STOP SLAVE IO_THREAD;
mysql> STOP SLAVE SQL_THREAD;
mysql> START SLAVE;
then the replication continues as usual. I hit this many times alread and it's a pain.
mysql> select version();
+---------------+
| version() |
+---------------+
| 5.7.18-15-log |
+---------------+
1 row in set (0.00 sec)
VK
Changed in percona-server: | |
status: | Incomplete → New |
When the slave hangs and I execut "STOP SLAVE", the command hangs also and I see this in error log:
2017-06- 30T12:53: 10.147865Z 14021 [Warning] Slave SQL for channel '': Coordinator thread of multi-threaded slave is being stopped in the middle of assigning a group of events; deferring to exit until the group completion ... , Error_code: 0 30T12:54: 12.150017Z 14021 [ERROR] Slave SQL for channel '': ... The slave coordinator and worker threads are stopped, possibly leaving data in inconsistent state. A restart should restore consistency automatically, although using non-transactional storage for data or info tables or DDL queries could lead to problems. In such cases you have to examine your data (see documentation for details). Error_code: 1756
2017-06-
"STOP SLAVE" never finishes. I solved it by killing all slave threads in processlist, then the slave really stops and the command returns.