Hi, 

As a part of md-cache improvements to cache xattrs as well: 
http://review.gluster.org/#/c/13408/ 
we now need to differentiate between virtual and non-virtual xattr. 

Unfortunately, we have no standard naming convention for virtual and on-disk 
xattr, and we cannot even change 
now, as backward compatibility will be broken. This makes negative xattr 
caching tricky on client side. 

The proposed way of xattr caching in md-cache is, to cache all on disk 
xattrs(can be optionally excluded), and in case the 
xattr is not found in the cache, its considered as ENODATA. This means, if an 
xattr is not identified as virtual xattr, it may 
get ENODATA and fail the functionality. 

To identify a virtual xattr, one solution suggested by Raghavendra G, was to 
add a dict option saying its a virtual xattr. 
To do this, we need to first categorize the existing virtual and non-virtual 
xattrs. I have created an etherpad which contains 
a list of xattrs copied from glusterfs.h. I request each component owner/others 
to add the xattrs used by their component 
@ https://public.pad.fsfe.org/p/gluster-xattr-categorization 

After the categorization is done, will send out a patch that adds a dict option 
for every internal xattr. 

Any other suggestions are welcome. 

Regards, 
Poornima 
_______________________________________________
Gluster-devel mailing list
Gluster-devel@gluster.org
http://www.gluster.org/mailman/listinfo/gluster-devel

Reply via email to