<feed xmlns='http://www.w3.org/2005/Atom'>
<title>glusterfs.git/tests/bugs/replicate/bug-1238508-self-heal.t, branch v3.11dev</title>
<subtitle></subtitle>
<link rel='alternate' type='text/html' href='http://dev.gluster.org/cgit/glusterfs.git/'/>
<entry>
<title>tests: Fix ./tests/bugs/replicate/bug-1238508-self-heal.t</title>
<updated>2015-07-07T11:41:03+00:00</updated>
<author>
<name>Ravishankar N</name>
<email>ravishankar@redhat.com</email>
</author>
<published>2015-07-07T06:45:17+00:00</published>
<link rel='alternate' type='text/html' href='http://dev.gluster.org/cgit/glusterfs.git/commit/?id=b1abcf61d927009dfd794316b02d683d0e6d32cc'/>
<id>b1abcf61d927009dfd794316b02d683d0e6d32cc</id>
<content type='text'>
Test failed @
http://build.gluster.org/job/rackspace-regression-2GB-triggered/12010/consoleFull
(Reported by Vijaykumar M)

Fix:
s/afr_get_pending_heal_count/get_pending_heal_count
Signed-off-by: Ravishankar N &lt;ravishankar@redhat.com&gt;

Change-Id: I69c44919ae68e3ebb9a5bc58a8e45a0a96fad62e
BUG: 1238508
Reviewed-on: http://review.gluster.org/11556
Reviewed-by: Atin Mukherjee &lt;amukherj@redhat.com&gt;
Reviewed-by: Pranith Kumar Karampuri &lt;pkarampu@redhat.com&gt;
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Tested-by: NetBSD Build System &lt;jenkins@build.gluster.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Test failed @
http://build.gluster.org/job/rackspace-regression-2GB-triggered/12010/consoleFull
(Reported by Vijaykumar M)

Fix:
s/afr_get_pending_heal_count/get_pending_heal_count
Signed-off-by: Ravishankar N &lt;ravishankar@redhat.com&gt;

Change-Id: I69c44919ae68e3ebb9a5bc58a8e45a0a96fad62e
BUG: 1238508
Reviewed-on: http://review.gluster.org/11556
Reviewed-by: Atin Mukherjee &lt;amukherj@redhat.com&gt;
Reviewed-by: Pranith Kumar Karampuri &lt;pkarampu@redhat.com&gt;
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Tested-by: NetBSD Build System &lt;jenkins@build.gluster.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>cluster/afr : expunge first, impunge next in entry selfheal</title>
<updated>2015-07-06T07:11:42+00:00</updated>
<author>
<name>Anuradha Talur</name>
<email>atalur@redhat.com</email>
</author>
<published>2015-07-03T06:05:46+00:00</published>
<link rel='alternate' type='text/html' href='http://dev.gluster.org/cgit/glusterfs.git/commit/?id=214101394bdea4ab57b8704467f450df4adbb8f6'/>
<id>214101394bdea4ab57b8704467f450df4adbb8f6</id>
<content type='text'>
When entry self-heals are performed, the files/directories
that are to be expunged should be removed first and then
impunge should be done.

Consider the following scenario :
A volume with 2 bricks : b0 and b1.
1) With following hierarchy on both bricks:
olddir
|__ oldfile

2) Bring down b1 and do 'mv olddir newdir'.

3) Bring up b1 and self-heal.

4) Without patch, during self-heal the events occur in
following order,
        a) Creation of newdir on the sink brick. Notice that
gfid of olddir and newdir are same. As a result of which
gfid-link file in .glusterfs directory still points to olddir
and not to newdir.

        b) Deletion of olddir on the sink brick. As a part of
this deletion, the gfid link file is also deleted. Now, there
is no link file pointing to newdir.

5) Files under newdir will not get listed as part of readdir.

To tackle this kind of scenario, an expunge should be done first
and impunge later; which is the purpose of this patch.

Change-Id: Idc8546f652adf11a13784ff989077cf79986bbd5
BUG: 1238508
Signed-off-by: Anuradha Talur &lt;atalur@redhat.com&gt;
Reviewed-on: http://review.gluster.org/11498
Reviewed-by: Ravishankar N &lt;ravishankar@redhat.com&gt;
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Krutika Dhananjay &lt;kdhananj@redhat.com&gt;
Reviewed-by: Pranith Kumar Karampuri &lt;pkarampu@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
When entry self-heals are performed, the files/directories
that are to be expunged should be removed first and then
impunge should be done.

Consider the following scenario :
A volume with 2 bricks : b0 and b1.
1) With following hierarchy on both bricks:
olddir
|__ oldfile

2) Bring down b1 and do 'mv olddir newdir'.

3) Bring up b1 and self-heal.

4) Without patch, during self-heal the events occur in
following order,
        a) Creation of newdir on the sink brick. Notice that
gfid of olddir and newdir are same. As a result of which
gfid-link file in .glusterfs directory still points to olddir
and not to newdir.

        b) Deletion of olddir on the sink brick. As a part of
this deletion, the gfid link file is also deleted. Now, there
is no link file pointing to newdir.

5) Files under newdir will not get listed as part of readdir.

To tackle this kind of scenario, an expunge should be done first
and impunge later; which is the purpose of this patch.

Change-Id: Idc8546f652adf11a13784ff989077cf79986bbd5
BUG: 1238508
Signed-off-by: Anuradha Talur &lt;atalur@redhat.com&gt;
Reviewed-on: http://review.gluster.org/11498
Reviewed-by: Ravishankar N &lt;ravishankar@redhat.com&gt;
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Krutika Dhananjay &lt;kdhananj@redhat.com&gt;
Reviewed-by: Pranith Kumar Karampuri &lt;pkarampu@redhat.com&gt;
</pre>
</div>
</content>
</entry>
</feed>
