
The second rant is about *MySQL*. The =mysqld_safe= wrapper is a *ugly* *non-standards-compliant* hack. Or what would you call a daemon process that ignores SIGTERM?
Quote from the script: trap '' 1 2 3 15 # we shouldn't let anyone kill us
Maybe i should increase the serverity of this bug to "important", the maintainer has successfully ignored it for 333 days now.
I see no reason why the *wrapper* should ignore TERM. It's not like processes are sent a "TERM" randomly. I think this wrapper is just for stupid uses who start their mysql server in their shell, background it and wonder why it's gone when the logout... Actually, the *real* mysqld process does care about the TERM signal, and apparently the "shutdown" command is issued this way, too.
Secondly, mysql is a known process that prevents swsusp2 from working. You need to shutdown mysql first before you can suspend. Unfortunately, it doesn't shut down in 20% of the cases for me, but just keeps on running after breaking it's pid file... Guess i'll have to add a "killall mysqld" somewhere.
Don't let me get started on PHP, which IMHO is a quick-hack language you really should avoid when you intend to write nice, clean code. Just thing of the "register globals" thing, this language is not designed for clean things... (and a language being easy to learn and use certainly doesn't improve code quality. IMHO a good language should enforce clean coding styles. Albeit i'm not a fan of Java, one has to admit that it forces authors to write read- and maintainable code. PHP doesn't. PHP "coders" tend to intermix layout and code; putting all your data into a SQL database and calling inefficient queries certainly isn't the best way of storing your data either...