Issue #18880 has been updated by Charlie Sharpsteen.

Description updated

----------------------------------------
Bug #18880: compile with large number of defines is becoming very slow, ruby 
1.9.3 is affected even more
https://projects.puppetlabs.com/issues/18880#change-89175

* Author: konrad rzentarzewski
* Status: Unreviewed
* Priority: Normal
* Assignee: 
* Category: compiler
* Target version: 
* Affected Puppet version: 
* Keywords: 
* Branch: 
----------------------------------------
today i've made some synthetic checks with our lb setup, which consists of 121 
defines, each of them wraps around 4-7 another defines (nagios, haproxy, 
stunnel configs, firewall).

results are catastrophic.

even more, we started to use ruby 1.9.3, as 1.8.7 is becoming obsolete and it's 
adding a more lag.

i've reduced define numbers and observed that compile time reduces 
significantly each time.
additionally i've inlined code from each define that we source from our lb 
define, and it also speeds up compile a lot.

i've compiled with:

<pre>
time /usr/local/rvm/rubies/ruby-1.9.3-p327/bin/ruby /usr/bin/puppet master 
--compile lb2.acme.corp
</pre>

and

<pre>
time /usr/bin/ruby /usr/bin/puppet master --compile lb2.acme.corp
</pre>

actual times are here:

  <https://github.com/asquelt/puppet-defines-wtf/blob/master/BENCHMARK>

manifest is here:

  
<https://github.com/asquelt/puppet-defines-wtf/blob/master/manifests/projects/dc1-lb.pp>

catalogs are also in repo:

  <https://github.com/asquelt/puppet-defines-wtf>

you can see that i've decorated everything with double colon to make sure this 
is not related to #17335

case is described in puppet-users but wasn't commented:

  <https://groups.google.com/forum/?fromgroups=#!topic/puppet-users/4V01Kw5cReA>

we use puppetdb, but disabling it won't help (it strips 3-20 seconds depending 
on number of resources).

cpu on test machine is 2x Intel(R) Xeon(R) CPU E5335 @ 2.00GHz 4 cores, testing 
with single process.



-- 
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 unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/puppet-bugs?hl=en.
For more options, visit https://groups.google.com/groups/opt_out.


Reply via email to