<div dir="ltr"><div><div>Hi All,<br><br></div>Below are the proposed protocol changes (ie, XDR changes on the wire) we are thinking for Gluster 4.0.<br><br></div><ul><li>rchecksum/fsetattr: Add &#39;gfid&#39; field on wire</li></ul><p>Basic work already done at <a href="https://review.gluster.org/#/c/3956/">https://review.gluster.org/#/c/3956/</a> . Considering its 5yrs old patch, I refreshed it at <a href="https://review.gluster.org/17656">https://review.gluster.org/17656</a> for experimental branch, and it is all working fine.</p><p>This patch also helps in creating new RPC program etc, so for all other XDR changes, we only need to handle the specific change in the patch.</p><p><span style="color:rgb(0,255,0)">STATUS: GREEN</span><br></p><ul><li>statx() support</li></ul><p><a href="https://github.com/gluster/glusterfs/issues/273">https://github.com/gluster/glusterfs/issues/273</a> talks more on it. We can consider to make XDR changes for sure even if we don&#39;t implement the fops in all other xlator IMO, so there won&#39;t be clients&#39; compatibility issue.</p><p><span style="color:rgb(255,0,0)">STATUS: RED  </span>(As no work has been started yet)</p><ul><li>Changes to &#39;gf_flock&#39; structure on wire</li></ul><p>More on it @ <a href="https://review.gluster.org/#/c/15698">https://review.gluster.org/#/c/15698</a>. Can be handled without this change by using xdata, but adding this field in the XDR will make it faster, and less error prone.</p><p><span style="color:rgb(255,255,0)">STATUS: YELLOW</span></p><ul><li>Changes in few of the &#39;fops&#39; to get struct iatt in _cbk</li></ul><p>This is needed for mainly handling the cases of fail over during rebalance, self-heal etc. Today, because we don&#39;t have a protocol support, our cross architecture compatibility is broken, mainly because we send iatt as binary in xdata dict, which is not desirable.</p><p><span style="color:rgb(255,0,0)">STATUS: RED</span></p><p>(Red as we need to hear from team on what are the changes needed, and it would be significant change as we may have to change the fops signature itself).</p><ul><li>fadvise()</li></ul><p>As per the email thread <a href="http://lists.gluster.org/pipermail/gluster-devel/2017-August/053457.html">http://lists.gluster.org/pipermail/gluster-devel/2017-August/053457.html</a>, if we implement the fop, we would need a new XDR for it.</p><p><span style="color:rgb(255,0,0)">STATUS: RED</span></p><p>(It is red as it is still in discovery phase)<br></p><ul><li>Misc</li></ul><p>We don&#39;t have any other proposal for protocol change for now, other than a suggestion from Jeff Darcy about taking out the common flags we use across the board, inside xdata, and make them as &#39;flags&#39; itself in XDR, for better perf, and manageability. <br></p><p><span style="color:rgb(255,0,0)">STATUS: RED <br></span></p><p>(Mainly because the work is about discovery and changing the fops signature itself).</p><p><br></p><p>This is the good time to highlight if you need any further changes in protocol itself, and start towards getting it implemented and tested. I volunteer to review all such patches, and happy to co-ordinate it on experimental branch before sending them as a single patch (or multiple dependent, granular patches) on master when we feel it is ready.</p><p><br></p><p>Regards,<br></p><p>Amar<br></p><p><br></p><div><div><div>-- <br><div class="gmail_signature"><div dir="ltr"><div><div dir="ltr"><div>Amar Tumballi (amarts)<br></div></div></div></div></div>
</div></div></div></div>