Details
-
Bug
-
Status: Resolved
-
Normal
-
Resolution: Fixed
-
None
-
None
-
Night's Watch
-
2
-
PR - 2019-05-29, PR - 2019-06-12, PR - 2019-06-25
-
Needs Assessment
-
Reviewed
-
34680
-
1
-
Not Needed
-
Needs Assessment
Description
Puppet Version: 2018.1.5, 2018.1.7
If a Puppet run is killed the lockfile remains containing the PID that was previously being used for the process. If another process starts and uses this PID, the Puppet agent will fail with:
Notice: Run of Puppet configuration client already in progress; skipping (/opt/puppetlabs/puppet/cache/state/agent_catalog_run.lock exists)
Steps to reproduce:
Create a lock file containing PID of a running process on the system which is not Puppet
Attempt to run Puppet:
[root@pe-201815-master ~]# puppet agent -t
Notice: Run of Puppet configuration client already in progress; skipping (/opt/puppetlabs/puppet/cache/state/agent_catalog_run.lock exists)
Desired Behavior: Could the PID be checked to confirm it's associated with a Puppet process? If it is not, the lockfile should be ignored. If the lockfile contains a number that is not currently associated with any running process it seems to be ignored.
I have set tested setting runtimeout which was the solution to PUP-7517 however as the process running on the PID isn't Puppet it does not work for this scenario.
Attachments
Issue Links
- duplicates
-
PUP-9247 Puppet pidlock checks only look for PID if it is running, not process name
-
- Closed
-
- is blocked by
-
PUP-9691 Puppet pidlock incorrectly clears lock when running under bundler
-
- Closed
-
- relates to
-
MODULES-9497 puppet-agent: install_puppet.ps1 when a stale install_pid_lock is present
-
- Resolved
-