Issue #13208 has been reported by Oliver Hookins.
----------------------------------------
Bug #13208: Puppet agent doesn't honour file metadata expiration field when
processing the catalog.
https://projects.puppetlabs.com/issues/13208
Author: Oliver Hookins
Status: Unreviewed
Priority: Normal
Assignee:
Category:
Target version:
Affected Puppet version: 2.6.7
Keywords:
Branch:
Whenever the Puppet agent has to handle a file resource with a source coming
from the Puppetmaster, it issues a file_metadata request to the Puppetmaster to
figure out if the file has changed between the local and remote copies. It
receives something like the following back:
<pre>
--- !ruby/object:Puppet::FileServing::Metadata
checksum: "{md5}b51047c0fc4944a0e47ce9173a6561e5"
checksum_type: md5
destination:
expiration: 2012-03-19 15:06:20.989782 +01:00
ftype: file
group: 0
links: !ruby/sym manage
mode: 420
owner: 0
path: /etc/puppet/modules/bar/files/file0972
</pre>
Given that in #13199 we have a situation where MD5 is the only hashing
mechanism available, this can be very computationally expensive and yet we are
supplying an expiration timestamp for the metadata that has been served back to
the agent.
It should be possible for the agent to store and reuse this metadata within the
expiration time so that load on the master is reduced. Ideally it would be
supplied as an RFC-compliant HTTP header such as ETag or Last-Modified so that
it can play nice with standard caching mechanisms. Right now no caching
mechanism can adequately fit between the master and agent without having to
make naive and possibly incorrect decisions. Since the client also doesn't make
any use of expiration data we have a poorly scalable mechanism in place all
round for file metadata.
--
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.