Red Hat Bugzilla – Bug 868087
Multiple memcache key/value pairs are used to store metadata for account and containers
Last modified: 2014-07-11 12:16:48 EDT
Description of problem:
Currently, three memcache key/value pairs are used to cache the metadata for
accounts and containers.
This is both a potential data integrity problem and a performance issue.
The data integrity problem can arise from two actors setting the various
keys to different sets of computed values, or a reader fetching a partial
set before a writer updates one of the keys.
It is a performance problem in that we have triple the network traffic
hitting the memcache servers.
Version-Release number of selected component (if applicable):
Steps to Reproduce:
1. Hook up wireshark
2. Observe traffic two and from a memcache server
3. Notice for a given Swift API GET on a container, three memcache GET
operations are performed
3 memcache GET operations performed per Swift API GET on a container/account
1 memcache GET operation performed per Swift API GET
I'll take this as I am currently working on performance improvements in the module containing the code for this behavior.
CHANGE: http://review.gluster.org/4139 (object-storeage: refactor to use one memcache key) merged in master by Vijay Bellur (email@example.com)