Source: odyssey
Version: 1.5.1~rc8-1
Usertags: pidof-without-procps
Dear maintainer(s) of odyssey,
it appears that odyssey uses `pidof` in its testsuite, or that
at least one of its binary packages uses `pidof` at runtime.
Historically, `pidof` was provided by the Essential package
`sysvinit-tools`, making an explicit dependency unnecessary. However
`pidof` will soon be moved to `procps` and will no longer be part of
the Essential set.
Please add an explicit dependency on `procps`:
* via the `Depends:` field of all binary packages of odyssey
that use `pidof` at runtime;
* via the `Build-Depends:` field of odyssey, if `pidof` is
used in tests run at build-time;
* via the `Depends:` field of `debian/control/tests`, if `pidof` is
used in autopkgtests.
To prevent any disruption for users of odyssey, please add
this dependency now, before `pidof` is moved from `sysvinit-utils` to
`procps`. Alternatively, you could remove all uses of `pidof`.
It is believed that odyssey uses `pidof` due to the following
code snippets:
```
path: odyssey_1.5.1~rc3-1/test/functional/tests/online-restart/runner.sh
fi
after_restart_pid=$(pidof odyssey)
if [ "$before_restart_pid" == "$after_restart_pid" ]; then
path: odyssey_1.5.1~rc3-1/test/functional/tests/online-restart/runner.sh
sleep 0.5
before_restart_pid=$(pidof odyssey)
kill -sUSR2 "$before_restart_pid" || true
path: odyssey_1.5.1~rc3-1/test/functional/tests/online-restart/runner.sh
sleep 0.5
before_restart_pid=$(pidof odyssey)
kill -sUSR2 $before_restart_pid
path: odyssey_1.5.1~rc3-1/test/functional/tests/online-restart/runner.sh
sleep 5
after_restart_pid=$(pidof odyssey)
ps aux | grep odyssey
path: odyssey_1.5.1~rc3-1/test/functional/tests/online-restart/runner.sh
fi
after_restart_pid=$(pidof odyssey)
if [ "$before_restart_pid" == "$after_restart_pid" ]; then
path: odyssey_1.5.1~rc3-1/test/functional/tests/online-restart/runner.sh
echo "some trash" > /tests/online-restart/odyssey.conf
before_restart_pid=$(pidof odyssey)
kill -sUSR2 $(pidof odyssey)
path: odyssey_1.5.1~rc3-1/test/functional/tests/rules_order/runner.sh
cp /tests/rules_order/seq_1_reload.conf /tests/rules_order/seq_1.conf
kill -sHUP $(pidof odyssey)
sleep 2
path: odyssey_1.5.1~rc3-1/test/functional/tests/rules_order/runner.sh
cp /tests/rules_order/not_seq_1_reload.conf /tests/rules_order/not_seq_1.conf
kill -sHUP $(pidof odyssey)
sleep 2
path: odyssey_1.5.1~rc3-1/test/functional/tests/reload/runner.sh
echo 'unix_socket_mode "0777"' >> /tests/reload/conf.conf
kill -s HUP $(pidof odyssey)
psql 'host=localhost port=6432 dbname=postgres user=postgres' -c 'select 1' || {
path: odyssey_1.5.1~rc3-1/test/functional/tests/reload-show-clients/runner.sh
# there must be exactly one watchdog coroutine after config reload(s)
# function od_storage_watchdog_watch is defined in storage.c
if [ $(gdb -q --pid $(pidof odyssey) --batch -ex 'source /gdb.py' -ex 'info
mmcoros' | grep -c 'od_storage_watchdog_watch') -ne 1 ]
then
echo "!!! expected only one lag polling coro after reloads !!!"
path: odyssey_1.5.1~rc3-1/test/functional/tests/reload-show-clients/reloads.sh
for run in {1..1000}; do
kill -s HUP $(pidof odyssey) || exit 1
done
path: odyssey_1.5.1~rc3-1/test/functional/tests/min_pool_size_reload/runner.sh
# ensure min_pool_size are reloaded correctly
sed -i 's/min_pool_size\ 5/min_pool_size\ 10/g'
/tests/min_pool_size_reload/config.conf
kill -sHUP $(pidof odyssey)
sleep 1
path: odyssey_1.5.1~rc3-1/test/functional/tests/cascade/runner.sh
/usr/bin/odyssey /tests/cascade/odyssey-gateway.conf
sleep 1
gateway_pid=$(pidof odyssey)
/usr/bin/odyssey /tests/cascade/odyssey-root1.conf
```
Feel free to close this issue if this is a false positive (for example
if this code is in an unreachable code path).
Regards,
--
Gioele Barabucci