Comment 33 for bug 1273462

Revision history for this message
Dimitri John Ledkov (xnox) wrote : Re: [Bug 1273462] Re: Users can mistakenly run init.d scripts and cause problems if an equivalent upstart job already exists

On 3 December 2015 at 17:41, Mark Stosberg <email address hidden> wrote:
> In Bug #1521771, I spent some time tracking down different behavior
> between the mysql-5.5 "init" and "upstart" scripts. They differ on how
> many seconds are waited between the SIGTERM and SIGKILL signals are
> sent. Different values can mean the difference between a slower clean
> shutdown and a shutdown interrupted by a SIGKILL signal.
>
> In the case of that of that package, redirecting the "init.d" calls to
> the upstart script will have a positive impact in my opinion-- giving
> more time for MySQL to shutdown cleanly. So the proposed patch will be
> functionally helpful.
>
> I do suggest that for any package that's affected by this, the "init.d"
> script should be cleaned out, so only the code remains that redirects
> people to the upstart script.
>
> There is nothing about this line of code in an "init.d" script which
> indicates that that all the code below it is about to ignored:
>
> . /lib/lsb/init-functions
>
> Nor does the proposed patch emit any output that confirms that redirect
> is happened. The result is that someone could pull their hair out
> wondering why the "init.d" script is not behaving as expected.
>
> Realize that there are packages like "ec2-consistent-snapshot" which
> exist only in a PPA and make a hardcoded call to "/etc/init.d/mysql". It
> does that in hopes of working on non-Debian-based systems as well. (The
> package is also several years old, from an era when init.d scripts were
> more common). I'm not sure what small projects are supposed to when
> they want to issue a command like "stop mysql" in a way that might work
> across SysV init scripts, upstart and systemd.

Across all distros and init systems the following works, and does the
right thing, for the right init:

service mysql stop

--
Regards,

Dimitri.