<feed xmlns='http://www.w3.org/2005/Atom'>
<title>glusterfs.git/tests/bugs/changelog/bug-1321955.t, branch v3.8.4</title>
<subtitle></subtitle>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/'/>
<entry>
<title>features/changelog: Don't modify 'pargfid' in 'resolve_pargfid_to_path'</title>
<updated>2016-03-31T04:23:19+00:00</updated>
<author>
<name>Kotresh HR</name>
<email>khiremat@redhat.com</email>
</author>
<published>2016-03-29T13:36:46+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=9746ee75865162af1827337f22a553ea0c3ba2ed'/>
<id>9746ee75865162af1827337f22a553ea0c3ba2ed</id>
<content type='text'>
If 'changelog' is enabled and 'changelog.capture-del-path' option is on
it calls 'resolve_pargfid_to_path' which modifies 'pargfid' sent by
caller.  'changelog_unlink' calls this routine directly with
'loc-&gt;pargfid' resulting it being modified and point to root instead of
actual pargfid. This is a nasty bug and could cause the deletion of
entry on root directory instead on actual parent when 'loc-&gt;path' is
not present.  Hence this fix to make 'pargfid' a const pointer and
'resolve_pargfid' to work on copy of pargfid.

Glusterfind session creation enables these options by default to
capture deleted entry path in changelog.

Thanks Pranith for root causing this.

Change-Id: I1d275a86f91c981b6889bedef93401c039d01d71
BUG: 1321955
Signed-off-by: Kotresh HR &lt;khiremat@redhat.com&gt;
Reviewed-on: http://review.gluster.org/13845
Smoke: Gluster Build System &lt;jenkins@build.gluster.com&gt;
NetBSD-regression: NetBSD Build System &lt;jenkins@build.gluster.org&gt;
Reviewed-by: Pranith Kumar Karampuri &lt;pkarampu@redhat.com&gt;
Reviewed-by: Venky Shankar &lt;vshankar@redhat.com&gt;
Reviewed-by: Ravishankar N &lt;ravishankar@redhat.com&gt;
CentOS-regression: Gluster Build System &lt;jenkins@build.gluster.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
If 'changelog' is enabled and 'changelog.capture-del-path' option is on
it calls 'resolve_pargfid_to_path' which modifies 'pargfid' sent by
caller.  'changelog_unlink' calls this routine directly with
'loc-&gt;pargfid' resulting it being modified and point to root instead of
actual pargfid. This is a nasty bug and could cause the deletion of
entry on root directory instead on actual parent when 'loc-&gt;path' is
not present.  Hence this fix to make 'pargfid' a const pointer and
'resolve_pargfid' to work on copy of pargfid.

Glusterfind session creation enables these options by default to
capture deleted entry path in changelog.

Thanks Pranith for root causing this.

Change-Id: I1d275a86f91c981b6889bedef93401c039d01d71
BUG: 1321955
Signed-off-by: Kotresh HR &lt;khiremat@redhat.com&gt;
Reviewed-on: http://review.gluster.org/13845
Smoke: Gluster Build System &lt;jenkins@build.gluster.com&gt;
NetBSD-regression: NetBSD Build System &lt;jenkins@build.gluster.org&gt;
Reviewed-by: Pranith Kumar Karampuri &lt;pkarampu@redhat.com&gt;
Reviewed-by: Venky Shankar &lt;vshankar@redhat.com&gt;
Reviewed-by: Ravishankar N &lt;ravishankar@redhat.com&gt;
CentOS-regression: Gluster Build System &lt;jenkins@build.gluster.com&gt;
</pre>
</div>
</content>
</entry>
</feed>
