Issue #9671 has been updated by Jacob Helwig. Status changed from In Topic Branch Pending Review to Merged - Pending Release Target version changed from 2.7.x to 2.7.7
Merged into 2.7.x in commit:ad16096f97a546b8a12ed1f5230d2f78de6a0064 and 2.7rc in commit:323a1979be6273e2ff2c1ba7c844ce83f83953a4 ---------------------------------------- Bug #9671: transaction eval_generate slow on many files in recurse managed directory https://projects.puppetlabs.com/issues/9671 Author: Simon Effenberg Status: Merged - Pending Release Priority: High Assignee: Josh Cooper Category: file Target version: 2.7.7 Affected Puppet version: 2.7.0 Keywords: transaction file recurse Branch: Since 2.7 (jump from 2.6.2 to 2.7.3) a file resource for a directory with many files in it is really really too slow. <pre> file { "/var/www/munin": ensure => directory, owner => munin, group => munin, mode => 644, recurse => true, require => [ Class['munin::master'], ] } </pre> In the directory there are ~19000 files and in the /usr/lib/ruby/1.8/transaction.rb in lines 171-174: <pre> made.each do |res| add_conditional_directed_dependency(made.find { |r| r != res && r.name == res.name[0,r.name.length]} || resource, res) add_conditional_directed_dependency(res, sentinal, default_label) end </pre> the first add_conditional_directed_dependency needs a time between 0.2 and 1.5s which is, let's say an avg (it is growing over the time) of 0.4s and this *19000 files means, that the resource needs >2h... maybe this is not changeable but i wants to know if i have to remove the recurse => true for this or if this is a "bug" -- 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.
