Am 22.05.20 um 07:29 schrieb Noah Meyerhans: > On Sun, May 10, 2020 at 11:06:26PM +0200, Michael Biebl wrote: >>> +echo "Waiting for the service to be available" >>> +c=0 >>> +while ! nc -z -U /var/run/dovecot/auth-userdb; do >>> + c=$(($c+1)) >>> + sleep 2 >>> + if [ $c -gt 30 ]; then >>> + echo "Timed out waiting for the service to be available" >&2 >>> + exit 1 >>> + fi >>> +done >> >> Looping until the service is ready appears to be a workaround/hack at >> best imho. > > I agree, however... > >> The dovecot service should only signal its readiness when the >> communication sockets are ready yet to accept connections. I.e. this >> autopkgtest appears to point at a real issue that should be fixed properly. > > I do not believe that this is an RC issue. In order to address the > stale upstream version and pending security updates in sid, and allow > the package to again enter bullseye, I propose the following:
That's a policy determined by the release manager/ maintainers of debci. The recommended that I should file such issues with RC severity. If you don't agree with that policy, you should probably contact them directly. > I will upload a new upstream version to sid containing the workaround > for the test failures. I will leave this bug open, but will reduce the > severity to 'normal'. In a subsequent upload, I will apply a patch to > implement sd_notify and will resolve the bug. Please feel free to send > a patch if you don't want to wait however long it'll take for me to get > around to putting one together. Please don't apply this hack. If you don't want to fix this properly to get a (newer) version into testing, please just disable the test for the time being. It's great that the autopkgtest suite unconvered a real issue. Let's not mutilate the test suite. > Dovecot has been essentially unmaintained in Debian since August 2019, > and there's quite a backlog of work to do. I'm going to work on getting > it back into shape, but it will be a little while before it's where it > should be. It won't happen all at once.> > noah > The patch to add sd_notify is rather trivial. Problem is, that dovecot unhelpfully clears the full environment. In src/master/main.c, sd_notify() should be called around/after main_init(). Unfortunately, at this point master_service_env_clean() has been called, clearing the process environment, including NOTIFY_SOCKET, which is passed from systemd to dovecot and is needed to make sd_notify work. I haven't found a way how to instruct dovecot not to clear the NOTIFY_SOCKET env var. Regards, Michael
signature.asc
Description: OpenPGP digital signature