Merge pull request #793 from codership/10.1-MDEV-15442
MDEV-15442 xtrabackup-v2 SST donor stuck in DONOR/DESYNCED state when…
This commit is contained in:
commit
e08ddccc35
@ -644,6 +644,27 @@ send_donor()
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
monitor_process()
|
||||||
|
{
|
||||||
|
local sst_stream_pid=$1
|
||||||
|
|
||||||
|
while true ; do
|
||||||
|
|
||||||
|
if ! ps --pid "${WSREP_SST_OPT_PARENT}" &>/dev/null; then
|
||||||
|
wsrep_log_error "Parent mysqld process (PID:${WSREP_SST_OPT_PARENT}) terminated unexpectedly."
|
||||||
|
kill -- -"${WSREP_SST_OPT_PARENT}"
|
||||||
|
exit 32
|
||||||
|
fi
|
||||||
|
|
||||||
|
if ! ps --pid "${sst_stream_pid}" &>/dev/null; then
|
||||||
|
break
|
||||||
|
fi
|
||||||
|
|
||||||
|
sleep 0.1
|
||||||
|
|
||||||
|
done
|
||||||
|
}
|
||||||
|
|
||||||
if [[ ! -x `which $INNOBACKUPEX_BIN` ]];then
|
if [[ ! -x `which $INNOBACKUPEX_BIN` ]];then
|
||||||
wsrep_log_error "${INNOBACKUPEX_BIN} not in path: $PATH"
|
wsrep_log_error "${INNOBACKUPEX_BIN} not in path: $PATH"
|
||||||
exit 2
|
exit 2
|
||||||
@ -932,7 +953,7 @@ then
|
|||||||
|
|
||||||
MAGIC_FILE="${DATA}/${INFO_FILE}"
|
MAGIC_FILE="${DATA}/${INFO_FILE}"
|
||||||
wsrep_log_info "Waiting for SST streaming to complete!"
|
wsrep_log_info "Waiting for SST streaming to complete!"
|
||||||
wait $jpid
|
monitor_process $jpid
|
||||||
|
|
||||||
get_proc
|
get_proc
|
||||||
|
|
||||||
|
@ -329,6 +329,8 @@ EOF
|
|||||||
then
|
then
|
||||||
wsrep_log_error \
|
wsrep_log_error \
|
||||||
"Parent mysqld process (PID:$MYSQLD_PID) terminated unexpectedly."
|
"Parent mysqld process (PID:$MYSQLD_PID) terminated unexpectedly."
|
||||||
|
kill -- -"${MYSQLD_PID}"
|
||||||
|
sleep 1
|
||||||
exit 32
|
exit 32
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
@ -801,6 +801,27 @@ check_for_version()
|
|||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
|
monitor_process()
|
||||||
|
{
|
||||||
|
local sst_stream_pid=$1
|
||||||
|
|
||||||
|
while true ; do
|
||||||
|
|
||||||
|
if ! ps --pid "${WSREP_SST_OPT_PARENT}" &>/dev/null; then
|
||||||
|
wsrep_log_error "Parent mysqld process (PID:${WSREP_SST_OPT_PARENT}) terminated unexpectedly."
|
||||||
|
kill -- -"${WSREP_SST_OPT_PARENT}"
|
||||||
|
exit 32
|
||||||
|
fi
|
||||||
|
|
||||||
|
if ! ps --pid "${sst_stream_pid}" &>/dev/null; then
|
||||||
|
break
|
||||||
|
fi
|
||||||
|
|
||||||
|
sleep 0.1
|
||||||
|
|
||||||
|
done
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
if [[ ! -x `which $INNOBACKUPEX_BIN` ]];then
|
if [[ ! -x `which $INNOBACKUPEX_BIN` ]];then
|
||||||
wsrep_log_error "innobackupex not in path: $PATH"
|
wsrep_log_error "innobackupex not in path: $PATH"
|
||||||
@ -1102,7 +1123,7 @@ then
|
|||||||
|
|
||||||
MAGIC_FILE="${DATA}/${INFO_FILE}"
|
MAGIC_FILE="${DATA}/${INFO_FILE}"
|
||||||
wsrep_log_info "Waiting for SST streaming to complete!"
|
wsrep_log_info "Waiting for SST streaming to complete!"
|
||||||
wait $jpid
|
monitor_process $jpid
|
||||||
|
|
||||||
get_proc
|
get_proc
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user