mirror of
https://github.com/MariaDB/server.git
synced 2025-01-30 10:31:54 +01:00
Fix for BUG#19391: IM fails to start after two executions
server-tools/instance-manager/manager.cc: Start Listener-thread after all initialization.
This commit is contained in:
parent
17dcb6e72c
commit
9b7258e1a2
1 changed files with 24 additions and 22 deletions
|
@ -147,28 +147,6 @@ void manager(const Options &options)
|
||||||
if (create_pid_file(options.pid_file_name, manager_pid))
|
if (create_pid_file(options.pid_file_name, manager_pid))
|
||||||
return;
|
return;
|
||||||
|
|
||||||
sigset_t mask;
|
|
||||||
set_signals(&mask);
|
|
||||||
|
|
||||||
/* create the listener */
|
|
||||||
{
|
|
||||||
pthread_t listener_thd_id;
|
|
||||||
pthread_attr_t listener_thd_attr;
|
|
||||||
int rc;
|
|
||||||
|
|
||||||
pthread_attr_init(&listener_thd_attr);
|
|
||||||
pthread_attr_setdetachstate(&listener_thd_attr, PTHREAD_CREATE_DETACHED);
|
|
||||||
rc= set_stacksize_n_create_thread(&listener_thd_id, &listener_thd_attr,
|
|
||||||
listener, &listener_args);
|
|
||||||
pthread_attr_destroy(&listener_thd_attr);
|
|
||||||
if (rc)
|
|
||||||
{
|
|
||||||
log_error("manager(): set_stacksize_n_create_thread(listener) failed");
|
|
||||||
goto err;
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
/* create guardian thread */
|
/* create guardian thread */
|
||||||
{
|
{
|
||||||
pthread_t guardian_thd_id;
|
pthread_t guardian_thd_id;
|
||||||
|
@ -211,6 +189,30 @@ void manager(const Options &options)
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* Initialize signals and alarm-infrastructure. */
|
||||||
|
|
||||||
|
sigset_t mask;
|
||||||
|
set_signals(&mask);
|
||||||
|
|
||||||
|
/* create the listener */
|
||||||
|
{
|
||||||
|
pthread_t listener_thd_id;
|
||||||
|
pthread_attr_t listener_thd_attr;
|
||||||
|
int rc;
|
||||||
|
|
||||||
|
pthread_attr_init(&listener_thd_attr);
|
||||||
|
pthread_attr_setdetachstate(&listener_thd_attr, PTHREAD_CREATE_DETACHED);
|
||||||
|
rc= set_stacksize_n_create_thread(&listener_thd_id, &listener_thd_attr,
|
||||||
|
listener, &listener_args);
|
||||||
|
pthread_attr_destroy(&listener_thd_attr);
|
||||||
|
if (rc)
|
||||||
|
{
|
||||||
|
log_error("manager(): set_stacksize_n_create_thread(listener) failed");
|
||||||
|
goto err;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
After the list of guarded instances have been initialized,
|
After the list of guarded instances have been initialized,
|
||||||
Guardian should start them.
|
Guardian should start them.
|
||||||
|
|
Loading…
Add table
Reference in a new issue