[Bugs] [Bug 1317785] New: Cache swift xattrs

bugzilla at redhat.com bugzilla at redhat.com
Tue Mar 15 08:32:31 UTC 2016


https://bugzilla.redhat.com/show_bug.cgi?id=1317785

            Bug ID: 1317785
           Summary: Cache swift xattrs
           Product: GlusterFS
           Version: mainline
         Component: md-cache
          Severity: low
          Assignee: bugs at gluster.org
          Reporter: ppai at redhat.com
                CC: bugs at gluster.org



Description of problem:

gluster-swift extensively uses "user.swift.metadata" xattr in it's
functionality. This is not cached and hence the performance is usually
terrible.

Every operation (GET,PUT,POST,DELETE,HEAD) in gluster-swift issues getxattr()
as follows:

getxattr("/mnt/gluster-object/test/c1/o8", "user.swift.metadata", 0x0, 0) = 190
getxattr("/mnt/gluster-object/test/c1/o8", "user.swift.metadata",
"{"Content-Length":"11","ETag":"5eb63bbbe01eeed093cb22bb8f5acdc3","X-Timestamp":"1458021187.45380","X-Object-Type":"file","X-Type":"Object","Content-Type":"application/x-www-form-urlencoded"}",
190) = 190

The first getxattr() is to get the size of xattr value and the second
getxattr() is to fetch the actual value itself.

The entire xattr information is sent thrice by brick to FUSE mount. Once on
lookup, again on the first getxattr() to get size and then again on second
gexattr() call. These three network calls can be reduced to just one if the
xattr information is cached when it's fetched for the first time.

-- 
You are receiving this mail because:
You are on the CC list for the bug.
You are the assignee for the bug.


More information about the Bugs mailing list