We had now several times the problem that when our puppetmaster died (due to some memory problems) all our clients daemons just stopped running and exited. We then had to manually restart all daemons.
Sample log entry from a client:
Sun Apr 20 06:24:32 +0200 2008 Puppet (notice): Finished catalog run in 45.93 seconds
Sun Apr 20 06:56:32 +0200 2008 Puppet (err): Could not retrieve plugins: execution expired
Sun Apr 20 06:58:32 +0200 2008 Puppet (err): Configuration retrieval timed out
Sun Apr 20 06:58:33 +0200 2008 Puppet (notice): Starting catalog run
this is the last entry after that puppetd isn't running anymore.
It seems that puppetd is failling after sending the message benchmark in lib/puppet/network/client/master.rb on line 234. I tried to nail this problem down to propose a patch for it, however my puppet internal knowledge isn't yet that fine to really see where the problem actually raises. It might be due to some (unlogged) failure in benchmark or even later.