Issue #2892 has been updated by Daniel Pittman. Subject changed from Remove unneeded YAML serialization when caching catalog in puppetd to Improve performance when caching catalog in puppet agent. Description updated Status changed from Needs Decision to Accepted Target version set to 3.X
This is a reasonable request, and we should do it. Off-hand I think it should be safe to do inside the 3.x series, but we need to watch out: at least some users depend on the current cache for running local reports, etc, and might be broken by any change here. It isn't clear if preserving the wire catalog, or changing the cache format, or anything else is the "right" answer, though obviously skipping a round of inflate/deflate is going to be faster than the alternative. ---------------------------------------- Bug #2892: Improve performance when caching catalog in puppet agent. https://projects.puppetlabs.com/issues/2892#change-62886 Author: Brice Figureau Status: Accepted Priority: Normal Assignee: Daniel Pittman Category: plumbing Target version: 3.X Affected Puppet version: 0.25.1 Keywords: pson json catalog cache serialization Branch: tickets/master/2892 Peter Meier noticed that the puppetd catalog caching was an operation that was taking lots of RAM. Analysis show that for large catalog YAML dumping consumes lots of memory (roughly 3x times the object to serialize). The catalog is sent from the master to the client in serialized format (usually pson/json), the idea would be to directly use it as the local client cache, instead of re-serializing the "live" catalog. One possible implementation would be: * keep the serialized version of the catalog in the request in the REST client * when caching the catalog, have a specific terminus that would just dump this string to disk This has been regularly observed in the field as being a significant performance cost, especially when performing interactive Puppet runs to debug issues interactively. -- 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.
