From 1d3f4a1a490656378131d66cb507145e5141fbdd Mon Sep 17 00:00:00 2001 From: unknown Date: Tue, 2 Nov 2004 17:53:25 -0700 Subject: [PATCH] Portability fixes to mysqld_safe for non-Linux systems. Fix FIND_PROC for Solaris test, and fix if @IS_LINUX@ test in mysqld_safe itself. configure.in: Portability fix for FIND_PROC setting; on Solaris (and probably others), 'ps -p $$' inside a shell script just returns 'sh' for command line, even though $0 contains the filename. So, use 'ps -fp $$' in the test (it shows the full command line, e.g., 'sh configure'). Leave the actual FIND_PROC command as-is, since mysqld itself is not a shell script. scripts/mysqld_safe.sh: Portability fix for mysqld_safe on non-Linux systems. A bogus use of 'if' and 'test' caused non-bash shells to enter a section meant to be run only on Linux systems. BitKeeper/etc/logging_ok: Logging to logging@openlogging.org accepted --- BitKeeper/etc/logging_ok | 1 + configure.in | 2 +- scripts/mysqld_safe.sh | 2 +- 3 files changed, 3 insertions(+), 2 deletions(-) diff --git a/BitKeeper/etc/logging_ok b/BitKeeper/etc/logging_ok index 060586b6874..a716afb2392 100644 --- a/BitKeeper/etc/logging_ok +++ b/BitKeeper/etc/logging_ok @@ -139,6 +139,7 @@ tim@bitch.mysql.fi tim@black.box tim@hundin.mysql.fi tim@sand.box +tim@siva.hindu.god tim@threads.polyesthetic.msg tim@white.box tim@work.mysql.com diff --git a/configure.in b/configure.in index d4ede468435..97a59258ba8 100644 --- a/configure.in +++ b/configure.in @@ -444,7 +444,7 @@ if $PS p $$ 2> /dev/null | grep $0 > /dev/null then FIND_PROC="$PS p \$\$PID | grep mysqld > /dev/null" # Solaris -elif $PS -p $$ 2> /dev/null | grep $0 > /dev/null +elif $PS -fp $$ 2> /dev/null | grep $0 > /dev/null then FIND_PROC="$PS -p \$\$PID | grep mysqld > /dev/null" # BSD style diff --git a/scripts/mysqld_safe.sh b/scripts/mysqld_safe.sh index b9e7ce21f79..da7e06f6c05 100644 --- a/scripts/mysqld_safe.sh +++ b/scripts/mysqld_safe.sh @@ -315,7 +315,7 @@ do break fi - if test @IS_LINUX@ -a $KILL_MYSQLD -eq 1 + if @IS_LINUX@ && test $KILL_MYSQLD -eq 1 then # Test if one process was hanging. # This is only a fix for Linux (running as base 3 mysqld processes)