<div dir="ltr">Mohit, <div><br></div><div>Can you set up a call/meeting where you can explain the current patch? That would make it easier to review.</div><div><br></div><div>Thanks,</div><div>Nithya<br><div class="gmail_extra"><br><div class="gmail_quote">On 13 July 2017 at 10:32, Raghavendra Gowdappa <span dir="ltr">&lt;<a href="mailto:rgowdapp@redhat.com" target="_blank">rgowdapp@redhat.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">All,<br>
<br>
Patch [1] is getting more complex day by day. We had to extend permission healing to xattr healing as Mohith saw some regressions in uid/gid healing codepath. So, I would request you to take a look and comment.<br>
<br>
Current behavior of the patch:<br>
* MDS (Meta data server) is the source of truth (among other subvols containing directory) for user, posix-acls, some other xattrs, uid/gid on a directory<br>
* If mds is not there, choose existing hashed-subvol as mds. Once chosen mds remains constant till that brick is removed.<br>
* non-availability of mds leads to failure of setxattr/setattr operation. Some volume level operations like add-brick/remove-brick maintain metadata on root, it is necessary that these operations don&#39;t fail. So, no mds is chosen for root and existing behavior (doing ops on all subvols simultaneously) is retained. Also, note that root won&#39;t have any hashed-subvol (we could&#39;ve chose first child of dht as mds, but didn&#39;t for reasons mentioned earlier)<br>
* uid/gid healing logic is changed from having subvol with latest ctime as source of truth to mds being source of truth.<br>
<br>
[1] <a href="https://review.gluster.org/15468" rel="noreferrer" target="_blank">https://review.gluster.org/<wbr>15468</a><br>
<br>
regards,<br>
Raghavendra<br>
</blockquote></div><br></div></div></div>