diff options
author | Stefan Ghinea <stefan.ghinea@windriver.com> | 2023-03-18 02:16:33 +0200 |
---|---|---|
committer | Khem Raj <raj.khem@gmail.com> | 2023-03-18 09:36:49 -0700 |
commit | edea484f2dee3e4d7101b14f4a22d28be0291aa0 (patch) | |
tree | 4c5a3f2381ede33bd9fb4fb7f66f67ef8aa11ec4 /meta-python/recipes-core | |
parent | 880bd38370b76245d8cf63a6118bbc1bd6e535cf (diff) | |
download | meta-openembedded-edea484f2dee3e4d7101b14f4a22d28be0291aa0.tar.gz |
redis: fix service redis-server restart not working under sysvinit
Under sysvinit when trying to restart redis-server using
service redis-server restart two calls are made to start-stop-daemon, first
with the --stop argument and then with --start argument consecutively.
Because the process doesn't immediately terminate when start-stop-daemon
--stop is called, the next call to start-stop-daemon --start finds the
process still running and does not attempt to start another one.
This leads to only a stop of the redis-server process when a restart is
requested. This behavior affects all redis versions using sysvinit only.
This can be fixed by using the --retry <timeout/schedule> argument with
start-stop-daemon --stop in order for the call to block until the process
terminates so that start-stop-daemon --start will attempt to start a new
process.
Unfortunately the --retry argument works only in the implementation of
start-stop-daemon provided by dpkg package and is ignored in the
implementation provided by busybox package.
A repeated check if the process is still running and another try with
another signal after a timeout will effectively simulate a stop with
--retry=TERM/5/KILL/5 schedule.
Signed-off-by: Stefan Ghinea <stefan.ghinea@windriver.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Diffstat (limited to 'meta-python/recipes-core')
0 files changed, 0 insertions, 0 deletions