mirror of
https://github.com/MariaDB/server.git
synced 2025-01-19 21:42:35 +01:00
Merge mysql.com:/home/alik/MySQL/devel/5.0-rt
into mysql.com:/home/alik/MySQL/devel/5.0-tree
This commit is contained in:
commit
11fcbaf1e1
3 changed files with 40 additions and 30 deletions
|
@ -148,3 +148,5 @@ drop function bug15728_insert;
|
|||
drop table t1, t2;
|
||||
|
||||
# End of 5.0 tests
|
||||
|
||||
sync_slave_with_master;
|
||||
|
|
|
@ -139,9 +139,12 @@ void Guardian_thread::process_instance(Instance *instance,
|
|||
case JUST_CRASHED:
|
||||
if (current_time - current_node->crash_moment <= 2)
|
||||
{
|
||||
instance->start();
|
||||
log_info("guardian: starting instance %s",
|
||||
instance->options.instance_name);
|
||||
if (instance->is_crashed())
|
||||
{
|
||||
instance->start();
|
||||
log_info("guardian: starting instance %s",
|
||||
instance->options.instance_name);
|
||||
}
|
||||
}
|
||||
else
|
||||
current_node->state= CRASHED;
|
||||
|
@ -152,11 +155,14 @@ void Guardian_thread::process_instance(Instance *instance,
|
|||
{
|
||||
if ((current_node->restart_counter < restart_retry))
|
||||
{
|
||||
instance->start();
|
||||
current_node->last_checked= current_time;
|
||||
current_node->restart_counter++;
|
||||
log_info("guardian: restarting instance %s",
|
||||
instance->options.instance_name);
|
||||
if (instance->is_crashed())
|
||||
{
|
||||
instance->start();
|
||||
current_node->last_checked= current_time;
|
||||
current_node->restart_counter++;
|
||||
log_info("guardian: restarting instance %s",
|
||||
instance->options.instance_name);
|
||||
}
|
||||
}
|
||||
else
|
||||
current_node->state= CRASHED_AND_ABANDONED;
|
||||
|
|
|
@ -147,28 +147,6 @@ void manager(const Options &options)
|
|||
if (create_pid_file(options.pid_file_name, manager_pid))
|
||||
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 */
|
||||
{
|
||||
pthread_t guardian_thd_id;
|
||||
|
@ -211,6 +189,30 @@ void manager(const Options &options)
|
|||
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,
|
||||
Guardian should start them.
|
||||
|
|
Loading…
Reference in a new issue