Bug 916933 - RFE: rpm spec macro for services that should not be running during update
RFE: rpm spec macro for services that should not be running during update
Status: NEW
Product: Fedora
Classification: Fedora
Component: systemd (Show other bugs)
Unspecified Unspecified
unspecified Severity unspecified
: ---
: ---
Assigned To: systemd-maint
Fedora Extras Quality Assurance
: Triaged
Depends On:
Blocks: systemd-RFE
  Show dependency treegraph
Reported: 2013-03-01 04:41 EST by Michal Hlavinka
Modified: 2014-03-16 23:44 EDT (History)
10 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Last Closed:
Type: Bug
Regression: ---
Mount Type: ---
Documentation: ---
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---

Attachments (Terms of Use)

  None (edit)
Description Michal Hlavinka 2013-03-01 04:41:18 EST
Description of problem:
There are a few systemd macros for %pre/%post/... phases of rpm package update.
Services are restarted once updated is complete.
Some services does not work properly and/or spawn error messages if they are running during update. For this case, it'd help if you could add another set of systemd macros that would stop service before update and start it again once update is complete.
Comment 1 Michal Schmidt 2013-03-01 06:14:17 EST
Would you give us a couple of examples of packages whose scriptlets do this?
Comment 2 Michal Hlavinka 2013-03-01 06:34:30 EST
One example is dovecot. It has master process spawning workers and has dlopen-ed plugins. Bug #134325. Fix was removed during one spec file clean-up and I got email that it caused problems again, so I put it back.

Second package is nut which also has several workers communicating together. This package does not have fix for this yet. I filed this bug before fixing it.
Comment 3 Bill Nottingham 2013-03-01 11:15:28 EST
If a package can't be restarted cleanly via normal methods in a transaction, perhaps it shouldn't be restarted at all and be left to the administrator?
Comment 4 Michal Hlavinka 2013-03-04 04:37:04 EST
The problem is not time of the restart, the problem is that some services should not be running with half new, half old files. Master process spawns workers (and communicates with them) and workers dlopen plugins. If old master spawns new worker, it can cause a problem. If old worker tries to dlopen new plugin, it can cause a problem.

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