mirror of
https://github.com/MariaDB/server.git
synced 2025-07-30 16:24:05 +03:00
Fix problem with detecting wheter im processes has shutdown cleanly
This commit is contained in:
@ -3485,36 +3485,29 @@ sub im_stop($) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
# Check that all processes died.
|
# Check if all processes shutdown cleanly
|
||||||
|
my $clean_shutdown= 1; # Assum they did
|
||||||
|
|
||||||
my $clean_shutdown= 0;
|
if (kill (0, $instance_manager->{'pid'}))
|
||||||
|
|
||||||
while (1)
|
|
||||||
{
|
{
|
||||||
if (kill (0, $instance_manager->{'pid'}))
|
mtr_warning("IM-main is still alive.");
|
||||||
{
|
$clean_shutdown= 0;
|
||||||
mtr_warning("IM-main is still alive.");
|
}
|
||||||
last;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (defined $instance_manager->{'angel_pid'} &&
|
if (defined $instance_manager->{'angel_pid'} &&
|
||||||
kill (0, $instance_manager->{'angel_pid'}))
|
kill (0, $instance_manager->{'angel_pid'}))
|
||||||
{
|
{
|
||||||
mtr_warning("IM-angel is still alive.");
|
mtr_warning("IM-angel is still alive.");
|
||||||
last;
|
$clean_shutdown= 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
foreach my $pid (@mysqld_pids)
|
foreach my $pid (@mysqld_pids)
|
||||||
|
{
|
||||||
|
if (kill (0, $pid))
|
||||||
{
|
{
|
||||||
if (kill (0, $pid))
|
mtr_warning("Guarded mysqld ($pid) is still alive.");
|
||||||
{
|
$clean_shutdown= 0;
|
||||||
mtr_warning("Guarded mysqld ($pid) is still alive.");
|
|
||||||
last;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
$clean_shutdown= 1;
|
|
||||||
last;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
# Kill leftovers (the order is important).
|
# Kill leftovers (the order is important).
|
||||||
|
Reference in New Issue
Block a user