Comment 0 for bug 675185

Revision history for this message
Jakob Unterwurzacher (jakobunt) wrote :

Symptoms are: After mysql server upgrades + restarts the old mysqld_safe keeps running and consumes 100% cpu, strace shows:
14:18:18.789847 wait4(4294967295, 0x7fffb3b3d59c, 0, NULL) = -1 ECHILD (No child processes)
14:18:18.789920 wait4(4294967295, 0x7fffb3b3d59c, 0, NULL) = -1 ECHILD (No child processes)
14:18:18.789992 wait4(4294967295, 0x7fffb3b3d59c, 0, NULL) = -1 ECHILD (No child processes)
For more info see the dupes, particularily bug 105457. Does not happen always, for reliable test case see below.

This is a bug (race condition) in dash, fixed by http://git.kernel.org/?p=utils/dash/dash.git;a=commit;h=3800d4934391b144fd261a7957aea72ced7d47ea .

TEST CASE: Script in the commit message (link above). Allows to reproduce this always, even on Karmic still.

SRU JUSTIFICATION: Obviously safe patch.

PATCH: Attached, run mysqld_safe in bash instead of dash.

REGRESSION POTENTIAL: Minimal. 1) Bash is a superset of dash. 2) Before dash became the default sh, bash was used, we just revert that change.

NOTES: mysqld_safe will be replaced by an upstart job. But Hardy has support for 3 more years, justifiying a fix.