Red Hat Bugzilla – Bug 1067696
RHBA-2014:0191 triggered a bug in postfix condrestart always fail to restart the service on package update
Last modified: 2017-09-06 03:34:50 EDT
Created attachment 865690 [details] proposed patch for init script Description of problem: postfix master daemon /usr/libexec/postfix/master won't restart on package update making this part of bugfix anouncement untrue: Users of postfix are advised to upgrade to these updated packages, which fix this bug. After installing this update, the postfix service will be restarted automatically. Users need to install the updates from the RHBA-2014:16831 initscripts advisory for these changes to take effect. Version-Release number of selected component (if applicable): initscripts-9.03.40-2.el6_5.1 postfix-2.6.6-6.el6_5 How reproducible: Always Steps to Reproduce: 1. yum update initscripts postfix 2. service postfix status Actual results: master dead but pid file exists # lsof | grep master | grep delete master 27440 root txt REG 253,0 171376 10229351 /usr/libexec/postfix/master (deleted) # cat /var/spool/postfix/pid/master.pid 27440 Expected results: master (pid <new-pid-#>) is running... Additional info: There are actually two bugs. Initscripts status -b functionality is broken and fails to find running postfix master process because binary file is already removed from filesystem on package update. But the real postfix bug is that condrestart only works if status returns 0 whcih is not right thing to do. If status returns 0, 1, or 2 condrestart should do it's work and restart service. These other cases are lock file present but no pid file and pid file prosent but no process.
*** Bug 1095402 has been marked as a duplicate of this bug. ***
(In reply to Tuomo Soini from comment #0) > Thanks for the report. > There are actually two bugs. Initscripts status -b functionality is broken > and fails to find running postfix master process because binary file is > already removed from filesystem on package update. > I am unable to reproduce this problem with: initscripts-9.03.43-1.el6.x86_64 > But the real postfix bug is that condrestart only works if status returns 0 > whcih is not right thing to do. If status returns 0, 1, or 2 condrestart > should do it's work and restart service. These other cases are lock file > present but no pid file and pid file prosent but no process. > This fix makes sense - restart if the daemon should be running, but it is dead for some reason. I don't think there is any authoritative specification for the condrestart behaviour, but at least I am able to find RHEL services which restart if there is lock file presents. Thus this fix shouldn't break anything, giving it dev ack.
initscripts-9.03.46-1.el6.x86_64 which is in rhel6 has the fix and according git 9.03.41-1 has it already. So if you need to duplicate the problem you need the RHBA-2014:0191 version.
(In reply to Tuomo Soini from comment #5) > initscripts-9.03.46-1.el6.x86_64 which is in rhel6 has the fix and according > git 9.03.41-1 has it already. So if you need to duplicate the problem you > need the RHBA-2014:0191 version. Thanks for info, I supposed it was fixed in initscripts. Ack for the postfix fix.
Red Hat Enterprise Linux 6 transitioned to the Production 3 Phase on May 10, 2017. During the Production 3 Phase, Critical impact Security Advisories (RHSAs) and selected Urgent Priority Bug Fix Advisories (RHBAs) may be released as they become available. The official life cycle policy can be reviewed here: http://redhat.com/rhel/lifecycle This issue does not appear to meet the inclusion criteria for the Production Phase 3 and will be marked as CLOSED/WONTFIX. If this remains a critical requirement, please contact Red Hat Customer Support to request a re-evaluation of the issue, citing a clear business justification. Red Hat Customer Support can be contacted via the Red Hat Customer Portal at the following URL: https://access.redhat.com