On Wednesday, November 27, 2013 11:17:44 PM UTC-6, Glenn Poston wrote: > > My external fact script takes 5s to run. > > With external fact... > puppet takes 2.5m to run > facter takes 33s to run > > Without external fact... > puppet takes 27s to run > facter takes 0.68s > > Bottom line... there's no significant change in facter runtime when > parsing the external fact, but the puppet runtime quadruples. >
Well, no significant change in facter's runtime give or take a factor of x50. What's two orders of magnitude between friends? Really, a five-second runtime for a fact is pretty extreme, but even that seems not to match the timings you report -- it looks more like your external fact takes 32 seconds to run. In the past, Puppet has sometimes had issues with unnecessarily evaluating facts more than once, so perhaps such an issue is magnifying the effect of your slow fact. Or perhaps the fact value is extremely large. Or maybe evaluating the fact leaves the node in a state that slows or delays communication with the master. It is probably worth your while to run the agent with the "--test --evaltrace" options to get a more detailed breakdown of how the time is being consumed. Please post the whole timing report. Also, it might be helpful to know what your external fact script is actually doing. Are you at liberty to post that? > > From watching the logs in real time I can see that the extra time is taken > before puppet outputs its first response line (compilation time). Also > note that the compilation time that puppet reports is ~2s even though (when > watching the output realtime) it takes 2 minutes for that line to return > when puppet is parsing the external fact script. > > Note: This script generates 36 custom facts > > Should I submit a bug for this? > > I think that would be premature at this time. The issue is likely to be tied to details of your external fact script, so although there may indeed be a bug to report, I don't think we know yet what it might be. John -- You received this message because you are subscribed to the Google Groups "Puppet Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to puppet-users+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/puppet-users/fe6a462d-77d9-4058-ad37-58d6a7dd667b%40googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.