diff --git a/scripts/mysqld_safe.sh b/scripts/mysqld_safe.sh index f49f885bf5a..5174b4bcfa4 100644 --- a/scripts/mysqld_safe.sh +++ b/scripts/mysqld_safe.sh @@ -71,6 +71,7 @@ Usage: $0 [OPTIONS] --defaults-extra-file=FILE Also use defaults from the specified file --ledir=DIRECTORY Look for mysqld in the specified directory --open-files-limit=LIMIT Limit the number of open files + --crash-script=FILE Script to call when mysqld crashes --timezone=TZ Set the system timezone --malloc-lib=LIB Preload shared library LIB if available --mysqld=FILE Use the specified file as mysqld @@ -202,6 +203,7 @@ parse_arguments() { optname_subst=`echo "$optname" | sed 's/_/-/g'` arg=`echo $arg | sed "s/^$optname/$optname_subst/"` case "$arg" in + --crash-script=*) CRASH_SCRIPT="$val" ;; # these get passed explicitly to mysqld --basedir=*) MY_BASEDIR_VERSION="$val" ;; --datadir=*|--data=*) DATADIR="$val" ;; @@ -799,7 +801,7 @@ have_sleep=1 while true do - rm -f $safe_mysql_unix_port "$pid_file" # Some extra safety + rm -f "$pid_file" # Some extra safety start_time=`date +%M%S` @@ -874,6 +876,11 @@ do done fi log_notice "mysqld restarted" + if test -n "$CRASH_SCRIPT" + then + crash_script_output=`$CRASH_SCRIPT 2>&1` + log_error "$crash_script_output" + fi done log_notice "mysqld from pid file $pid_file ended" diff --git a/storage/maria/ha_maria.h b/storage/maria/ha_maria.h index 545daca12fe..80762296395 100644 --- a/storage/maria/ha_maria.h +++ b/storage/maria/ha_maria.h @@ -35,7 +35,6 @@ C_MODE_START ICP_RESULT index_cond_func_maria(void *arg); C_MODE_END -extern ulong maria_sort_buffer_size; extern TYPELIB maria_recover_typelib; extern ulonglong maria_recover_options;