Issue #7165 has been updated by Jon Topper.

I'm also seeing this.  It's causing problems as some init scripts (tomcat6 from 
jpackage, I'm looking at you) have race conditions which mean that starting 
then restarting the service in quick succession doesn't work - by the time the 
"stop" process in the restart runs, the just-started daemon hasn't started its 
management thread yet, and so the shutdown command fails.

I'm struggling to think of any software I know of which can't be restarted if 
they're not running, but it strikes me that the cleanest approach here (from a 
user PoV) would be to allow you to configure the service resource with 
something like a "canrestartifstopped" flag to represent that case.

Arguably, not having to wait for two lots of daemon startups would also allow 
puppet to run more quickly too :)
----------------------------------------
Bug #7165: services restarted unnecessarily
https://projects.puppetlabs.com/issues/7165

Author: John Florian
Status: Needs Decision
Priority: Normal
Assignee: Nigel Kersten
Category: service
Target version: 
Affected Puppet version: 0.25.5
Keywords: 
Branch: 


Given the following conditions:

1. service 'S' is currently disabled/stopped
1. config file 'F' for service 'S' is currently in state 'A'
1. puppet class 'C' calls for 'S' to be enabled/running and 'F' to be in state 
'B'

When puppet runs, the following currently occurs:
<pre>
notice: //C/File[F]/content: content changed '{md5}-A' to '{md5}-B'
info: //C/File[F]: Scheduling refresh of Service[S]
notice: //C/Service[S]/ensure: ensure changed 'stopped' to 'running'
notice: //C/Service[S]: Triggering 'refresh' from 1 dependencies
</pre>

Thus, puppet sees the service is to be running and makes it so.  Then it 
realizes that a refresh is needed and so restarts the service.  The restart is 
unnecessary in this case.  Depending on the particular service, this could be 
quite undesirable.  Puppet should be able to recognize this case and simply 
start the service just once.



-- 
You have received this notification because you have either subscribed to it, 
or are involved in it.
To change your notification preferences, please click here: 
http://projects.puppetlabs.com/my/account

-- 
You received this message because you are subscribed to the Google Groups 
"Puppet Bugs" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/puppet-bugs?hl=en.

Reply via email to