Issue #4590 has been updated by Paul Berry. % Done changed from 0 to 80
I have modified Markus's SimpleGraph rewrite so that its YAML serialization is backward compatible with the format used by 2.6. It also contains an option (use_new_yaml_format) which causes it to use a more compact format which is intended for use in 2.8 and beyond. The option is used by spec tests to verify that 2.7 will be compatible with the planned 2.8 format. My modifications do not yet work with Ruby 1.8.1, because they rely on YAML.load() calling the method yaml_initialize on our objects. That is not supported in older versions of Ruby (in particular it doesn't work in 1.8.1). We will need to write a workaround/monkeypatch to make this work in older Rubies. Work in progress can be found in the branch http://github.com/stereotype441/puppet/tree/sg-test ---------------------------------------- Bug #4590: SimpleGraph is slow http://projects.puppetlabs.com/issues/4590 Author: Paul Berry Status: Accepted Priority: Normal Assigned to: Paul Berry Category: Target version: Affected version: 2.6.1rc2 Keywords: Branch: Experiments on 8/17/10 revealed that Puppet spends a significant amount of time executing methods in the SimpleGraph class. Using a contrived .pp file containing 4000 "notify" resources and 25806 "require" dependencies, execution of "puppet apply" takes 71 seconds with 2.6.x. We know that a lot of this time is due to SimpleGraph, because we can replace SimpleGraph with an alternate implementation (from Markus) and bring execution time down to 44 seconds, a 38% savings. Unfortunately, Markus's rewrite of SimpleGraph is not yet ready to commit to the codebase, because it breaks the YAML serialization format. I'm working on this. -- 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.
