<div dir="ltr"><br><div class="gmail_extra"><br><div class="gmail_quote">On Fri, Feb 26, 2016 at 7:05 AM, Joseph Fernandes <span dir="ltr">&lt;<a href="mailto:josferna@redhat.com" target="_blank">josferna@redhat.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">Hope this helps<br>
<br>
Courtesy : Raghvendra Talur (<a href="mailto:rtalur@redhat.com">rtalur@redhat.com</a>)<br>
<br>
1. Clone glusterfs repo to your laptop and get acquainted with dev workflow.<br>
<a href="https://gluster.readthedocs.org/en/latest/Developer-guide/Developers-Index/" rel="noreferrer" target="_blank">https://gluster.readthedocs.org/en/latest/Developer-guide/Developers-Index/</a><br>
<br>
2. If you find using your laptop as the test machine for Gluster as too<br>
scary, here is a vagrant based mechanism to get VMs setup on your laptop<br>
easily for Gluster testing.<br>
<a href="http://comments.gmane.org/gmane.comp.file-systems.gluster.devel/13494" rel="noreferrer" target="_blank">http://comments.gmane.org/gmane.comp.file-systems.gluster.devel/13494</a><br>
<br>
3.Find my Gluster Introduction blog post here in the preview link:<br>
<br>
<br>
<a href="https://6227134958232800133_bafac39c28bee4f256bbbef7510c9bb9b44fca05.blogspot.com/b/post-preview?token=s6_4MVIBAAA.zY--3ij00CkDwnitBOwnFBowEvCsKZ0o4ToQ0KYk9Po4pKujPj9ugmn-fm-XUFdLQxU50FmnCxBBr_IkSzuSlA.l_XFe1UvIEAiqkFAZZPdqQ&amp;postId=4168074834715190149&amp;type=POST" rel="noreferrer" target="_blank">https://6227134958232800133_bafac39c28bee4f256bbbef7510c9bb9b44fca05.blogspot.com/b/post-preview?token=s6_4MVIBAAA.zY--3ij00CkDwnitBOwnFBowEvCsKZ0o4ToQ0KYk9Po4pKujPj9ugmn-fm-XUFdLQxU50FmnCxBBr_IkSzuSlA.l_XFe1UvIEAiqkFAZZPdqQ&amp;postId=4168074834715190149&amp;type=POST</a></blockquote><div><br></div><div>This is the public link <a href="http://blog.raghavendratalur.in/2016/02/gluster-developer-guide-part-1.html">http://blog.raghavendratalur.in/2016/02/gluster-developer-guide-part-1.html</a></div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><br>
<br>
4. Follow all the lessons here in Translator 101 series for build on your<br>
understanding of Gluster.<br>
<a href="http://pl.atyp.us/hekafs.org/index.php/2011/11/translator-101-class-1-setting-the-stage/" rel="noreferrer" target="_blank">http://pl.atyp.us/hekafs.org/index.php/2011/11/translator-101-class-1-setting-the-stage/</a><br>
<a href="http://hekafs.org/index.php/2011/11/translator-101-lesson-2-init-fini-and-private-context" rel="noreferrer" target="_blank">http://hekafs.org/index.php/2011/11/translator-101-lesson-2-init-fini-and-private-context</a><br>
<a href="http://hekafs.org/index.php/2011/11/translator-101-lesson-3-this-time-for-real" rel="noreferrer" target="_blank">http://hekafs.org/index.php/2011/11/translator-101-lesson-3-this-time-for-real</a><br>
<a href="http://hekafs.org/index.php/2011/11/translator-101-lesson-4-debugging-a-translator" rel="noreferrer" target="_blank">http://hekafs.org/index.php/2011/11/translator-101-lesson-4-debugging-a-translator</a><br>
<br>
<br>
5. Try to fix or understand any of the bugs in this list<br>
<a href="https://bugzilla.redhat.com/buglist.cgi?bug_status=NEW&amp;bug_status=ASSIGNED&amp;classification=Community&amp;f1=keywords&amp;list_id=4424622&amp;o1=substring&amp;product=GlusterFS&amp;query_format=advanced&amp;v1=easyfix" rel="noreferrer" target="_blank">https://bugzilla.redhat.com/buglist.cgi?bug_status=NEW&amp;bug_status=ASSIGNED&amp;classification=Community&amp;f1=keywords&amp;list_id=4424622&amp;o1=substring&amp;product=GlusterFS&amp;query_format=advanced&amp;v1=easyfix</a><br>
<br>
<br>
Regards,<br>
Joe<br>
<div class=""><div class="h5"><br>
<br>
----- Original Message -----<br>
From: &quot;Ajil Abraham&quot; &lt;<a href="mailto:ajil95.abraham@gmail.com">ajil95.abraham@gmail.com</a>&gt;<br>
To: &quot;FNU Raghavendra Manjunath&quot; &lt;<a href="mailto:rabhat@redhat.com">rabhat@redhat.com</a>&gt;<br>
Cc: &quot;Gluster Devel&quot; &lt;<a href="mailto:gluster-devel@gluster.org">gluster-devel@gluster.org</a>&gt;<br>
Sent: Thursday, February 25, 2016 8:58:35 PM<br>
Subject: Re: [Gluster-devel] Need help with bitrot<br>
<br>
Thanks FNU Raghavendra. Does the signing happen only when the file data changes or even when extended attribute changes?<br>
<br>
I am also trying to understand the Gluster internal data structures. Are there any materials for the same? Similarly for the translators, the way they are stacked on client &amp; server side, how control flows between them. Can somebody please help?<br>
<br>
- Ajil<br>
<br>
On Thu, Feb 25, 2016 at 7:27 AM, FNU Raghavendra Manjunath &lt; <a href="mailto:rabhat@redhat.com">rabhat@redhat.com</a> &gt; wrote:<br>
<br>
<br>
<br>
Hi Ajil,<br>
<br>
Expiry policy tells the signer (Bit-rot Daemon) to wait for a specific period of time before signing a object.<br>
<br>
Whenever a object is modified, a notification is sent to the signer by brick process (bit-rot-stub xlator sitting in the I/O path) upon getting a release (i.e. when all the fds of that object are closed). The expiry policy tells the signer to wait for some time (by default its 120 seconds) before signing that object. It is done because, suppose the signer starts signing (i.e. read the object + calculate the checksum + store the checksum) a object the object gets modified again, then a new notification has to be sent and again signer has to sign the object by calculating the checksum. Whereas if the signer waits for some time and receives a new notification on the same object when its waiting, then it can avoid signing for the first notification.<br>
<br>
Venky, do you want to add anything more?<br>
<br>
Regards,<br>
Raghavendra<br>
<br>
<br>
<br>
On Wed, Feb 24, 2016 at 12:28 AM, Ajil Abraham &lt; <a href="mailto:ajil95.abraham@gmail.com">ajil95.abraham@gmail.com</a> &gt; wrote:<br>
<br>
<br>
<br>
Hi,<br>
<br>
I am a student interested in GlusterFS. Trying to understand the design of GlusterFS. Came across the Bitrot design document in Google. There is a mention of expiry policy used to sign the files. I did not clearly understand what the expiry policy is. Can somebody please help?<br>
<br>
-Ajil<br>
<br>
_______________________________________________<br>
Gluster-devel mailing list<br>
<a href="mailto:Gluster-devel@gluster.org">Gluster-devel@gluster.org</a><br>
<a href="http://www.gluster.org/mailman/listinfo/gluster-devel" rel="noreferrer" target="_blank">http://www.gluster.org/mailman/listinfo/gluster-devel</a><br>
<br>
<br>
<br>
_______________________________________________<br>
Gluster-devel mailing list<br>
<a href="mailto:Gluster-devel@gluster.org">Gluster-devel@gluster.org</a><br>
<a href="http://www.gluster.org/mailman/listinfo/gluster-devel" rel="noreferrer" target="_blank">http://www.gluster.org/mailman/listinfo/gluster-devel</a><br>
</div></div></blockquote></div><br></div></div>