Bug 635780 - dovecot becomes unresponsive after package update (condrestart should never fail)
Summary: dovecot becomes unresponsive after package update (condrestart should never f...
Alias: None
Product: Fedora
Classification: Fedora
Component: systemd
Version: rawhide
Hardware: All
OS: Linux
Target Milestone: ---
Assignee: Lennart Poettering
QA Contact: Fedora Extras Quality Assurance
: 655116 680074 (view as bug list)
Depends On:
Blocks: F14Target
TreeView+ depends on / blocked
Reported: 2010-09-20 17:15 UTC by Nicolas Mailhot
Modified: 2018-04-11 16:24 UTC (History)
10 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Last Closed: 2011-03-08 00:49:37 UTC
Type: ---

Attachments (Terms of Use)

Description Nicolas Mailhot 2010-09-20 17:15:34 UTC
For some reason, on a systemd box, updating dovecot via yum makes imap clients unhappy. With the traditional init system this operation was transparent

# yum update
Running Transaction

  Updating       : 1:dovecot-2.0.3-1.fc14.x86_64                           7/26 
warning: /etc/dovecot/conf.d/15-lda.conf created as /etc/dovecot/conf.d/15-lda.conf.rpmnew
  Cleanup        : 1:dovecot-2.0.2-1.fc14.x86_64                          17/26 
  dovecot.x86_64 1:2.0.3-1.fc14                                      


→ Looking at the service after the yum update:

# service dovecot status
dovecot.service - LSB: start and stop Dovecot Imap server
	  Loaded: loaded (/etc/rc.d/init.d/dovecot)
	  Active: active (running) since [Sat, 18 Sep 2010 03:18:38 +0200; 2 days ago]
	 Process: 29489 (/etc/rc.d/init.d/dovecot reload, code=exited, status=0/SUCCESS)
	  CGroup: name=systemd:/systemd-1/dovecot.service
		  ├ 1503 /usr/sbin/dovecot
		  ├ 1505 dovecot/anvil
		  ├ 1506 dovecot/log
		  ├ 5769 dovecot/auth
		  ├ 5770 dovecot/ssl-params
		  └ 5801 dovecot/auth -w

→ active since two days!!! but the binary has just been replaced and should have been reloaded

# service dovecot restart
Restarting dovecot (via systemctl):                        [  OK  ]

→ and now everything works again

# service dovecot status
dovecot.service - LSB: start and stop Dovecot Imap server
	  Loaded: loaded (/etc/rc.d/init.d/dovecot)
	  Active: active (running) since [Mon, 20 Sep 2010 19:05:48 +0200; 5s ago]
	 Process: 29730 (/etc/rc.d/init.d/dovecot stop, code=exited, status=0/SUCCESS)
	 Process: 29489 (/etc/rc.d/init.d/dovecot reload, code=exited, status=0/SUCCESS)
	 Process: 29743 (/etc/rc.d/init.d/dovecot start, code=exited, status=0/SUCCESS)
	  CGroup: name=systemd:/systemd-1/dovecot.service
		  ├ 29750 /usr/sbin/dovecot
		  ├ 29753 dovecot/anvil
		  ├ 29754 dovecot/log
		  ├ 29755 dovecot/ssl-params
		  ├ 29756 dovecot/imap-login
		  ├ 29757 dovecot/config
		  ├ 29765 dovecot/auth
		  ├ 29772 dovecot/auth -w
		  └ 29776 dovecot/imap

Version-Release number of selected component (if applicable):

Comment 1 Bill Nottingham 2010-09-20 17:40:11 UTC
Does simply running 'service dovecot condrestart' provoke the same issue?

Comment 2 Michal Schmidt 2010-09-20 18:30:00 UTC
It does here.

The bug seems to be in src/systemctl.c where "condrestart" is interpreted as as request for "ReloadOrTryRestartUnit".

Fedora Packaging Guidelines require that "condrestart" must be equivalent to "try-restart". See http://fedoraproject.org/wiki/Packaging:SysVInitScript#condrestart_and_try-restart

So "condrestart" should be translated to "TryRestartUnit".

Comment 3 Michal Schmidt 2010-09-20 18:45:49 UTC
posted a patch:

Comment 4 Bill Nottingham 2010-09-20 18:48:16 UTC
Would this also fix bug 632620 and bug 633774?

Comment 5 Michal Schmidt 2010-09-20 19:16:12 UTC
I don't think so.

Comment 6 Matthias Clasen 2010-10-08 22:46:18 UTC
Moving systemd bugs to f15, since the systemd feature got delayed.

Comment 7 Matěj Cepl 2010-12-29 11:09:06 UTC
*** Bug 655116 has been marked as a duplicate of this bug. ***

Comment 8 Matěj Cepl 2010-12-29 11:17:05 UTC
Also, how does this bug relate to the fact, that dovecot never gets started automatically on reboot even though it is chkconfiged on? (will have to reboot to obtain good error message)

Comment 9 Matěj Cepl 2010-12-29 11:33:22 UTC
See also bug 651354 ... condrestart should lead eventually to restart not reload.

Comment 10 Stephen Gallagher 2011-03-04 01:30:05 UTC
*** Bug 680074 has been marked as a duplicate of this bug. ***

Comment 11 Lennart Poettering 2011-03-08 00:49:37 UTC
"condrestart" has now been synomymous to "try-restart" for a while, and with current git we no longer generate an error if condrestart is used on a service that isn't running. This should resolve this issue.

Note You need to log in before you can comment on or make changes to this bug.