[Gluster-devel] io-stats: Fix overwriting of client profile by the bricks

Shyam srangana at redhat.com
Thu May 26 19:53:07 UTC 2016


This is regarding this commit:
- http://review.gluster.org/#/c/13872/
- commit 0facb11220aea20a6573b656785922219c9650cf

The change in the code will now dump the stats from the first io-stats 
xlator that it encounters, and not further wind the setxattr to other 
io-stats in the stack (either client or brick).

The repercussion is that when debugging performance issue, there are 
cases when we want to take a look at client and server io-stats in 
conjunction. This was possible when we could initiate the setfattr from 
a client (or from the client of interest) and hence gather stats across 
the client and the bircks.

Further some performance debugging also involve(s/d) adding io-stat 
xlator to various points in the graph, (again client or brick side 
graph) and initiate a stats dump. This helped isolate latency across 
different xlators in the stack, enabling further troubleshooting of the 
right areas, as the case may be. With the change mentioned this is no 
longer possible.

I think we need to reconsider the above change. The bug is real and 
needs a fix, but maybe we append the xlator name to the end of the 
provided filename and dump the stats into that, than unwind from the 
first instance of io-stats.

Of course, we also treat the io-stats xattr as special and ignore it in 
posix xlator, so that it does not reach the disk.

Thoughts?

Shyam


More information about the Gluster-devel mailing list