PCP daemons do not start automatically for bionic
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
pcp |
Fix Released
|
Unknown
|
|||
pcp (Ubuntu) |
Fix Released
|
Undecided
|
Unassigned |
Bug Description
Sync request:
Source package name: pcp
Source package version number: 4.0.1-1
Where to sync from: Debian sid main
Freeze exception justification:
The current version of PCP in bionic (4.0.0) has a serious bug that prevents the PCP daemons from starting. I submitted a fix for this in the upstream project, which was released as part of PCP 4.0.1 and is now in Debian sid as 4.0.1-1. While late in the release cycle for bionic, the current package is broken as-is. As nobody else seems to have encountered or reported this issue, I would argue syncing the latest release is less risky than an ubuntu one-off patch to 4.0.0 addressing just the start up issue.
Note this only affects bionic, as artful has a previous release of PCP (3.12.1) which does not have this bug.
=== Original Description
The PCP 4.0.0 packages for bionic do not automatically start PCP daemon processes.
From my research so far, I believe the reason for this is that PCP 4.0.0 ships both sysvinit scripts and systemd unit files (which simply call the sysvinit scripts). The services are enabled in the postinstall via "update-rc.d <daemon> defaults". It appears that the behavior for "update-rc.d ... defaults" is different for generated units (sysvinit only, where they do get enabled), versus when systemd units are available (where they are not enabled and not generated).
After installing PCP packages, the systemd units have status (using pmcd.service for this example, but it applies to app PCP daemons):
Loaded: loaded (/lib/systemd/
Running "update-rc.d pmcd defaults" results in no change to the status (confirming that "defaults" does not enable the service):
Loaded: loaded (/lib/systemd/
After running "update-rc.d pmcd enabled", the service is correctly enabled:
Loaded: loaded (/lib/systemd/
The best answer is probably to use deb-systemd-helper, or other appropriate systemd commands in the postinst when installing on a system with systemd, instead of using the old update-rc.d commands which appear to behave differently and in violation of the Debian policy manual, which states: "The default behaviour is to enable autostarting your package’s daemon."[1]
[1] https:/
Changed in pcp: | |
status: | Unknown → New |
Changed in pcp: | |
status: | New → Fix Released |
description: | updated |
description: | updated |
Reported upstream at https:/ /github. com/performance copilot/ pcp/issues/ 454