Here is a patch applied in Ubuntu that adresses the issue. The problem comes from the fact that mysqld_safe starts mysqld and then waits for its crash. However installing a trap for SIGHUP makes the wait command return immediately when a SIGHUP is received by mysqld_safe. This leads mysqld_safe to proceed and kill the remaining mysqld process (which hasn't crashed). The proposed fix is to add a wait command to the trap.
More information can be found in the Ubuntu bug: https://bugs.launchpad.net/ubuntu/+source/mysql-dfsg-5.0/+bug/326768 -- Mathias Gug Ubuntu Developer http://www.ubuntu.com
diff -u mysql-dfsg-5.0-5.1.30really5.0.75/debian/patches/38_scripts__mysqld_safe.sh__signals.dpatch mysql-dfsg-5.0-5.1.30really5.0.75/debian/patches/38_scripts__mysqld_safe.sh__signals.dpatch --- mysql-dfsg-5.0-5.1.30really5.0.75/debian/patches/38_scripts__mysqld_safe.sh__signals.dpatch +++ mysql-dfsg-5.0-5.1.30really5.0.75/debian/patches/38_scripts__mysqld_safe.sh__signals.dpatch @@ -24,7 +24,7 @@ +# From now on, we catch signals to do a proper shutdown of mysqld +# when signalled to do so. +# -+trap '/usr/bin/mysqladmin --defaults-extra-file=/etc/mysql/debian.cnf refresh' 1 # HUP ++trap '/usr/bin/mysqladmin --defaults-extra-file=/etc/mysql/debian.cnf refresh & wait' 1 # HUP +trap '/usr/bin/mysqladmin --defaults-extra-file=/etc/mysql/debian.cnf shutdown' 2 3 15 # INT QUIT and TERM + +#
signature.asc
Description: Digital signature

