Issue #2892 has been updated by Daniel Pittman.

Status changed from Accepted to In Topic Branch Pending Review
Target version changed from 3.x to 2.7.x
Branch changed from tickets/master/2892 to 
https://github.com/puppetlabs/puppet/pull/906

https://github.com/puppetlabs/puppet/pull/906 implements a JSON terminus, which 
can be configured as the cache terminus in favour of YAML.  In my testing it is 
approximately three times as fast, and I expect the difference to be larger for 
users with bigger or more complex catalogs.
----------------------------------------
Bug #2892: Improve performance when caching catalog in puppet agent.
https://projects.puppetlabs.com/issues/2892#change-66378

Author: Brice Figureau
Status: In Topic Branch Pending Review
Priority: Normal
Assignee: Daniel Pittman
Category: plumbing
Target version: 2.7.x
Affected Puppet version: 0.25.1
Keywords: pson json catalog cache serialization
Branch: https://github.com/puppetlabs/puppet/pull/906


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.

Reply via email to