Commit cdec34bc authored by Venkata Sidagam's avatar Venkata Sidagam

Bug #16776528 RACE CONDITION CAN CAUSE MYSQLD TO REMOVE SOCKET FILE ERRANTLY

      
Reverting the patch. Because this change is not to me made for GA versions.
parent 913f2296
...@@ -343,32 +343,6 @@ fi ...@@ -343,32 +343,6 @@ fi
parse_arguments `$print_defaults $defaults --loose-verbose mysqld_safe safe_mysqld` parse_arguments `$print_defaults $defaults --loose-verbose mysqld_safe safe_mysqld`
parse_arguments PICK-ARGS-FROM-ARGV "$@" parse_arguments PICK-ARGS-FROM-ARGV "$@"
# A pid file is created for the mysqld_safe process. This file protects the
# server instance resources during race conditions.
safe_pid="$DATADIR/mysqld_safe.pid"
if test -f $safe_pid
then
PID=`cat "$safe_pid"`
if @CHECK_PID@
then
if @FIND_PROC@
then
log_error "A mysqld_safe process already exists"
exit 1
fi
fi
rm -f "$safe_pid"
if test -f "$safe_pid"
then
log_error "Fatal error: Can't remove the mysqld_safe pid file"
exit 1
fi
fi
# Insert pid proerply into the pid file.
ps -e | grep [m]ysqld_safe | awk '{print $1}' | sed -n 1p > $safe_pid
# End of mysqld_safe pid(safe_pid) check.
# Determine what logging facility to use # Determine what logging facility to use
# Ensure that 'logger' exists, if it's requested # Ensure that 'logger' exists, if it's requested
...@@ -378,7 +352,6 @@ then ...@@ -378,7 +352,6 @@ then
if [ $? -ne 0 ] if [ $? -ne 0 ]
then then
log_error "--syslog requested, but no 'logger' program found. Please ensure that 'logger' is in your PATH, or do not specify the --syslog option to mysqld_safe." log_error "--syslog requested, but no 'logger' program found. Please ensure that 'logger' is in your PATH, or do not specify the --syslog option to mysqld_safe."
rm -f "$safe_pid" # Clean Up of mysqld_safe.pid file.
exit 1 exit 1
fi fi
fi fi
...@@ -483,7 +456,6 @@ does not exist or is not executable. Please cd to the mysql installation ...@@ -483,7 +456,6 @@ does not exist or is not executable. Please cd to the mysql installation
directory and restart this script from there as follows: directory and restart this script from there as follows:
./bin/mysqld_safe& ./bin/mysqld_safe&
See http://dev.mysql.com/doc/mysql/en/mysqld-safe.html for more information" See http://dev.mysql.com/doc/mysql/en/mysqld-safe.html for more information"
rm -f "$safe_pid" # Clean Up of mysqld_safe.pid file.
exit 1 exit 1
fi fi
...@@ -577,7 +549,6 @@ then ...@@ -577,7 +549,6 @@ then
if @FIND_PROC@ if @FIND_PROC@
then # The pid contains a mysqld process then # The pid contains a mysqld process
log_error "A mysqld process already exists" log_error "A mysqld process already exists"
rm -f "$safe_pid" # Clean Up of mysqld_safe.pid file.
exit 1 exit 1
fi fi
fi fi
...@@ -588,7 +559,6 @@ then ...@@ -588,7 +559,6 @@ then
$pid_file $pid_file
Please remove it manually and start $0 again; Please remove it manually and start $0 again;
mysqld daemon not started" mysqld daemon not started"
rm -f "$safe_pid" # Clean Up of mysqld_safe.pid file.
exit 1 exit 1
fi fi
fi fi
...@@ -674,5 +644,3 @@ done ...@@ -674,5 +644,3 @@ done
log_notice "mysqld from pid file $pid_file ended" log_notice "mysqld from pid file $pid_file ended"
rm -f "$safe_pid" # Some Extra Safety. File is deleted
# once the mysqld process ends.
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment