Issue #3396 has been updated by Brice Figureau. Status changed from Investigating to Ready for Testing Branch set to http://github.com/masterzen/puppet/tree/tickets/0.25.x/3396
Patch pending review is available in my github repository in the tickets/0.25.x/3396 branch: http://github.com/masterzen/puppet/tree/tickets/0.25.x/3396 ---------------------------------------- Bug #3396: Event propagation from generated resource is inefficient http://projects.reductivelabs.com/issues/3396 Author: Brice Figureau Status: Ready for Testing Priority: Normal Assigned to: Brice Figureau Category: plumbing Target version: Affected version: 0.25.4 Keywords: Branch: http://github.com/masterzen/puppet/tree/tickets/0.25.x/3396 It was reported by Peiter Meier (duritong) that the following manifest: <pre> file { "/deep/hierarchy/full/of/files": recurse => true, checksum => none, mode => 0600 } </pre> Takes a long time for the first run (when mode is changed). Analysis of the problem show that we produce many events that are tentatively propagated to the generated file sub-resource, ending in an about O(kn^2) performance (with k number of different events, and n number of generated resource). This happens because the transaction masquerades the events source by the topmost file resource. So instead of flowing the events from the real resource we're trying to flow them from the topmost resource, which is itself linked with out-edges (because of the auto-requiring) to all the sub generated resource. This is certainly wrong (why would we want to propagate back those events to where they originated?). The envisioned solution is to filter out all the edges pointing to the generated sub-resources for those events that originate from a linked generated sub-resource. -- 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://reductivelabs.com/redmine/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.
