mirror of
https://github.com/MariaDB/server.git
synced 2025-01-18 13:02:28 +01:00
Avoid problems on shutdown by shutting down replication slave threads
after normal connection threads. (Bug #11796) sql/mysqld.cc: Move call to end_slave() after first loop through killing threads, to minimize chances of 'SHOW SLAVE STATUS' being called between the time the slave is shut down and connections are shut down.
This commit is contained in:
parent
31ebc6ef71
commit
ac28ad5dca
1 changed files with 5 additions and 1 deletions
|
@ -648,7 +648,6 @@ static void close_connections(void)
|
|||
}
|
||||
#endif
|
||||
end_thr_alarm(0); // Abort old alarms.
|
||||
end_slave();
|
||||
|
||||
/*
|
||||
First signal all threads that it's time to die
|
||||
|
@ -664,6 +663,9 @@ static void close_connections(void)
|
|||
{
|
||||
DBUG_PRINT("quit",("Informing thread %ld that it's time to die",
|
||||
tmp->thread_id));
|
||||
/* We skip slave threads on this first loop through. */
|
||||
if (tmp->slave_thread) continue;
|
||||
|
||||
tmp->killed= 1;
|
||||
if (tmp->mysys_var)
|
||||
{
|
||||
|
@ -680,6 +682,8 @@ static void close_connections(void)
|
|||
}
|
||||
(void) pthread_mutex_unlock(&LOCK_thread_count); // For unlink from list
|
||||
|
||||
end_slave();
|
||||
|
||||
if (thread_count)
|
||||
sleep(2); // Give threads time to die
|
||||
|
||||
|
|
Loading…
Reference in a new issue