<feed xmlns='http://www.w3.org/2005/Atom'>
<title>glusterfs.git/libglusterfs/src, branch v3.5.6</title>
<subtitle>GlusterFS is a distributed file-system capable of scaling to several petabytes. It aggregates various storage bricks over Infiniband RDMA or TCP/IP interconnect into one large parallel network file system.</subtitle>
<link rel='alternate' type='text/html' href='https://fedorapeople.org/cgit/anoopcs/public_git/glusterfs.git/'/>
<entry>
<title>build: drop incorrect usage of 'inline'</title>
<updated>2015-07-23T14:33:03+00:00</updated>
<author>
<name>Niels de Vos</name>
<email>ndevos@redhat.com</email>
</author>
<published>2015-07-17T10:09:55+00:00</published>
<link rel='alternate' type='text/html' href='https://fedorapeople.org/cgit/anoopcs/public_git/glusterfs.git/commit/?id=8f2c7e67a8fa9cbf9f3b62ab0de930d921e3d362'/>
<id>8f2c7e67a8fa9cbf9f3b62ab0de930d921e3d362</id>
<content type='text'>
Newer versions of gcc complain loudly about the incorrect usage of
'inline'.

These changes have been part of commit a3cb38e3 in other branches. There
is no need to backport everything from that commit, but silencing the
warnings would be good.

Change-Id: I2319d9682b47e8533e9c179056a5152f75aeddc3
BUG: 1244147
Signed-off-by: Niels de Vos &lt;ndevos@redhat.com&gt;
Reviewed-on: http://review.gluster.org/11711
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Kaleb KEITHLEY &lt;kkeithle@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Newer versions of gcc complain loudly about the incorrect usage of
'inline'.

These changes have been part of commit a3cb38e3 in other branches. There
is no need to backport everything from that commit, but silencing the
warnings would be good.

Change-Id: I2319d9682b47e8533e9c179056a5152f75aeddc3
BUG: 1244147
Signed-off-by: Niels de Vos &lt;ndevos@redhat.com&gt;
Reviewed-on: http://review.gluster.org/11711
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Kaleb KEITHLEY &lt;kkeithle@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>nfs: make it possible to disable nfs.mount-rmtab</title>
<updated>2015-07-07T16:11:58+00:00</updated>
<author>
<name>Niels de Vos</name>
<email>ndevos@redhat.com</email>
</author>
<published>2015-06-21T13:07:58+00:00</published>
<link rel='alternate' type='text/html' href='https://fedorapeople.org/cgit/anoopcs/public_git/glusterfs.git/commit/?id=3cf776c49bc60b7f616a4c503a8b10b2d19ad04b'/>
<id>3cf776c49bc60b7f616a4c503a8b10b2d19ad04b</id>
<content type='text'>
When there are many NFS-clients doing very often mount/unmount actions,
the updating of the 'rmtab' can become a bottleneck and cause delays. In
these situations, the output of 'showmount' may be less important than
the responsiveness of the (un)mounting.

By setting 'nfs.mount-rmtab' to the value "/-", the cache file is not
updated anymore, and the entries are only kept in memory.

Cherry picked from commit 40407afb529f6e5fa2f79e9778c2f527122d75eb:
&gt; Cherry picked from commit 331ef6e1a86bfc0a93f8a9dec6ad35c417873849:
&gt;&gt; BUG: 1169317
&gt;&gt; Change-Id: I40c4d8d754932f86fb2b1b2588843390464c773d
&gt;&gt; Reported-by: Cyril Peponnet &lt;cyril@peponnet.fr&gt;
&gt;&gt; Signed-off-by: Niels de Vos &lt;ndevos@redhat.com&gt;
&gt;&gt; Reviewed-on: http://review.gluster.org/9223
&gt;&gt; Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
&gt;&gt; Reviewed-by: soumya k &lt;skoduri@redhat.com&gt;
&gt;&gt; Reviewed-by: jiffin tony Thottan &lt;jthottan@redhat.com&gt;
&gt;&gt; Reviewed-by: Kaleb KEITHLEY &lt;kkeithle@redhat.com&gt;
&gt;
&gt; This change also contains the fixes to the test-case from:
&gt;&gt;
&gt;&gt; nfs: fix spurious failure in bug-1166862.t
&gt;&gt;
&gt;&gt; In some environments, "showmount" could return an NFS-client that does
&gt;&gt; not start with "1". This would cause the test-case to fail. The check is
&gt;&gt; incorrect, the number of lines should get counted instead.
&gt;&gt;
&gt;&gt; Also moving the test-case to the .../nfs/... subdirectory.
&gt;&gt;
&gt;&gt; Cherry picked from commit ee9b35a780607daddc2832b9af5ed6bf414aebc0:
&gt;&gt; BUG: 1166862
&gt;&gt; Change-Id: Ic03aa8145ca57d78aea01564466e924b03bb302a
&gt;&gt; Signed-off-by: Niels de Vos &lt;ndevos@redhat.com&gt;
&gt;&gt; Reviewed-on: http://review.gluster.org/10419
&gt;&gt; Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
&gt;&gt; Reviewed-by: Vijay Bellur &lt;vbellur@redhat.com&gt;
&gt;&gt;
&gt;
&gt; Change-Id: I40c4d8d754932f86fb2b1b2588843390464c773d
&gt; BUG: 1215385
&gt; Signed-off-by: Niels de Vos &lt;ndevos@redhat.com&gt;
&gt; Reviewed-on: http://review.gluster.org/10379
&gt; Tested-by: NetBSD Build System
&gt; Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
&gt; Reviewed-by: Vijay Bellur &lt;vbellur@redhat.com&gt;

GLUSTERD_WORKDIR has been added to tests/include.rc and is not
configurable through ./configure like on newer branches. It is not
suitable to change the GlusterD working directory in an update for a
stable release.

Change-Id: I40c4d8d754932f86fb2b1b2588843390464c773d
BUG: 1166862
Signed-off-by: Niels de Vos &lt;ndevos@redhat.com&gt;
Reviewed-on: http://review.gluster.org/11336
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: jiffin tony Thottan &lt;jthottan@redhat.com&gt;
Reviewed-by: Kaleb KEITHLEY &lt;kkeithle@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
When there are many NFS-clients doing very often mount/unmount actions,
the updating of the 'rmtab' can become a bottleneck and cause delays. In
these situations, the output of 'showmount' may be less important than
the responsiveness of the (un)mounting.

By setting 'nfs.mount-rmtab' to the value "/-", the cache file is not
updated anymore, and the entries are only kept in memory.

Cherry picked from commit 40407afb529f6e5fa2f79e9778c2f527122d75eb:
&gt; Cherry picked from commit 331ef6e1a86bfc0a93f8a9dec6ad35c417873849:
&gt;&gt; BUG: 1169317
&gt;&gt; Change-Id: I40c4d8d754932f86fb2b1b2588843390464c773d
&gt;&gt; Reported-by: Cyril Peponnet &lt;cyril@peponnet.fr&gt;
&gt;&gt; Signed-off-by: Niels de Vos &lt;ndevos@redhat.com&gt;
&gt;&gt; Reviewed-on: http://review.gluster.org/9223
&gt;&gt; Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
&gt;&gt; Reviewed-by: soumya k &lt;skoduri@redhat.com&gt;
&gt;&gt; Reviewed-by: jiffin tony Thottan &lt;jthottan@redhat.com&gt;
&gt;&gt; Reviewed-by: Kaleb KEITHLEY &lt;kkeithle@redhat.com&gt;
&gt;
&gt; This change also contains the fixes to the test-case from:
&gt;&gt;
&gt;&gt; nfs: fix spurious failure in bug-1166862.t
&gt;&gt;
&gt;&gt; In some environments, "showmount" could return an NFS-client that does
&gt;&gt; not start with "1". This would cause the test-case to fail. The check is
&gt;&gt; incorrect, the number of lines should get counted instead.
&gt;&gt;
&gt;&gt; Also moving the test-case to the .../nfs/... subdirectory.
&gt;&gt;
&gt;&gt; Cherry picked from commit ee9b35a780607daddc2832b9af5ed6bf414aebc0:
&gt;&gt; BUG: 1166862
&gt;&gt; Change-Id: Ic03aa8145ca57d78aea01564466e924b03bb302a
&gt;&gt; Signed-off-by: Niels de Vos &lt;ndevos@redhat.com&gt;
&gt;&gt; Reviewed-on: http://review.gluster.org/10419
&gt;&gt; Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
&gt;&gt; Reviewed-by: Vijay Bellur &lt;vbellur@redhat.com&gt;
&gt;&gt;
&gt;
&gt; Change-Id: I40c4d8d754932f86fb2b1b2588843390464c773d
&gt; BUG: 1215385
&gt; Signed-off-by: Niels de Vos &lt;ndevos@redhat.com&gt;
&gt; Reviewed-on: http://review.gluster.org/10379
&gt; Tested-by: NetBSD Build System
&gt; Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
&gt; Reviewed-by: Vijay Bellur &lt;vbellur@redhat.com&gt;

GLUSTERD_WORKDIR has been added to tests/include.rc and is not
configurable through ./configure like on newer branches. It is not
suitable to change the GlusterD working directory in an update for a
stable release.

Change-Id: I40c4d8d754932f86fb2b1b2588843390464c773d
BUG: 1166862
Signed-off-by: Niels de Vos &lt;ndevos@redhat.com&gt;
Reviewed-on: http://review.gluster.org/11336
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: jiffin tony Thottan &lt;jthottan@redhat.com&gt;
Reviewed-by: Kaleb KEITHLEY &lt;kkeithle@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>cluster/afr: Make read child match check in afr optional</title>
<updated>2015-03-18T11:21:28+00:00</updated>
<author>
<name>Krutika Dhananjay</name>
<email>kdhananj@redhat.com</email>
</author>
<published>2015-03-17T11:13:00+00:00</published>
<link rel='alternate' type='text/html' href='https://fedorapeople.org/cgit/anoopcs/public_git/glusterfs.git/commit/?id=077185afe35350aae03bac0d25fbebcd8a3e1c72'/>
<id>077185afe35350aae03bac0d25fbebcd8a3e1c72</id>
<content type='text'>
        Backport of: http://review.gluster.org/#/c/9917

Having this particular check which was introduced by
commit bb2df4e63fa8a5d65f18b4a5efc757e8d475fbff causes a drop in
performance in readdirp. So the behavior is made configurable with this
patch.

Change-Id: I9012a6bb955229a0cbb48f06e4e2edc0782dfead
BUG: 1202675
Signed-off-by: Krutika Dhananjay &lt;kdhananj@redhat.com&gt;
Reviewed-on: http://review.gluster.org/9924
Reviewed-by: Pranith Kumar Karampuri &lt;pkarampu@redhat.com&gt;
Reviewed-by: Atin Mukherjee &lt;amukherj@redhat.com&gt;
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Niels de Vos &lt;ndevos@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
        Backport of: http://review.gluster.org/#/c/9917

Having this particular check which was introduced by
commit bb2df4e63fa8a5d65f18b4a5efc757e8d475fbff causes a drop in
performance in readdirp. So the behavior is made configurable with this
patch.

Change-Id: I9012a6bb955229a0cbb48f06e4e2edc0782dfead
BUG: 1202675
Signed-off-by: Krutika Dhananjay &lt;kdhananj@redhat.com&gt;
Reviewed-on: http://review.gluster.org/9924
Reviewed-by: Pranith Kumar Karampuri &lt;pkarampu@redhat.com&gt;
Reviewed-by: Atin Mukherjee &lt;amukherj@redhat.com&gt;
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Niels de Vos &lt;ndevos@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>features/marker: Filter internal xattrs in lookup</title>
<updated>2015-02-12T12:08:12+00:00</updated>
<author>
<name>Pranith Kumar K</name>
<email>pkarampu@redhat.com</email>
</author>
<published>2014-11-06T05:07:06+00:00</published>
<link rel='alternate' type='text/html' href='https://fedorapeople.org/cgit/anoopcs/public_git/glusterfs.git/commit/?id=6e4e21c689c2e4b96a564afb2f0a3972e7829a53'/>
<id>6e4e21c689c2e4b96a564afb2f0a3972e7829a53</id>
<content type='text'>
        Backport of http://review.gluster.com/9061

Afr should ignore quota-size-key as part of self-heal
but should heal quota-limit key.

BUG: 1162230
Change-Id: I639cfabbc44468da29914096afc7e2eca1ff1292
Signed-off-by: Pranith Kumar K &lt;pkarampu@redhat.com&gt;
Reviewed-on: http://review.gluster.org/9091
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Ravishankar N &lt;ravishankar@redhat.com&gt;
Reviewed-by: Raghavendra G &lt;rgowdapp@redhat.com&gt;
Reviewed-by: Krutika Dhananjay &lt;kdhananj@redhat.com&gt;
Reviewed-by: Niels de Vos &lt;ndevos@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
        Backport of http://review.gluster.com/9061

Afr should ignore quota-size-key as part of self-heal
but should heal quota-limit key.

BUG: 1162230
Change-Id: I639cfabbc44468da29914096afc7e2eca1ff1292
Signed-off-by: Pranith Kumar K &lt;pkarampu@redhat.com&gt;
Reviewed-on: http://review.gluster.org/9091
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Ravishankar N &lt;ravishankar@redhat.com&gt;
Reviewed-by: Raghavendra G &lt;rgowdapp@redhat.com&gt;
Reviewed-by: Krutika Dhananjay &lt;kdhananj@redhat.com&gt;
Reviewed-by: Niels de Vos &lt;ndevos@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>core: fix Ubuntu code audit (cppcheck) results</title>
<updated>2014-11-26T08:30:12+00:00</updated>
<author>
<name>Kaleb S. KEITHLEY</name>
<email>kkeithle@redhat.com</email>
</author>
<published>2014-04-29T19:12:46+00:00</published>
<link rel='alternate' type='text/html' href='https://fedorapeople.org/cgit/anoopcs/public_git/glusterfs.git/commit/?id=8ae5046eb6c86840ccecefbade1695e68055de33'/>
<id>8ae5046eb6c86840ccecefbade1695e68055de33</id>
<content type='text'>
See http://review.gluster.org/#/c/7583/ BZ 1086460

AFAICT these are false positives:

[geo-replication/src/gsyncd.c:99]: (error) Memory leak: str
[geo-replication/src/gsyncd.c:395]: (error) Memory leak: argv
[xlators/nfs/server/src/nlm4.c:1200]: (error) Possible null pointer dereference: fde

Program exits, resource leak not an issue
[extras/geo-rep/gsync-sync-gfid.c:105]: (error) Resource leak: fp

Test program:
[extras/test/test-ffop.c:27]: (error) Buffer overrun possible for long command line arguments.

Not built:
[xlators/cluster/ha/src/ha.c:2699]: (error) Possible null pointer dereference: priv

The remainder are fixed with this change-set:

[heal/src/glfs-heal.c:357]: (error) Possible null pointer dereference: remote_subvol
[libglusterfs/src/xlator.c:648]: (error) Uninitialized variable: gfid
[libglusterfs/src/xlator.c:649]: (error) Uninitialized variable: gfid
[xlators/cluster/afr/src/afr-inode-write.c:469]: (error) Possible null pointer dereference: frame
[xlators/cluster/afr/src/afr-self-heal-common.c:1704]: (error) Possible null pointer dereference: local
[xlators/cluster/dht/src/dht-rebalance.c:1643]: (error) Possible null pointer dereference: ctx
[xlators/cluster/stripe/src/stripe.c:4963]: (error) Possible null pointer dereference: local
[xlators/features/changelog/src/changelog.c:1464]: (error) Possible null pointer dereference: priv
[xlators/mgmt/glusterd/src/glusterd-geo-rep.c:1656]: (error) Possible null pointer dereference: command
[xlators/mgmt/glusterd/src/glusterd-replace-brick.c:914]: (error) Resource leak: file
[xlators/mgmt/glusterd/src/glusterd-replace-brick.c:998]: (error) Resource leak: file
[xlators/mgmt/glusterd/src/glusterd-sm.c:248]: (error) Possible null pointer dereference: new_ev_ctx
[xlators/mgmt/glusterd/src/glusterd-store.c:1332]: (error) Possible null pointer dereference: handle
[xlators/mgmt/glusterd/src/glusterd-utils.c:4706]: (error) Possible null pointer dereference: this
[xlators/mgmt/glusterd/src/glusterd-utils.c:5613]: (error) Possible null pointer dereference: this
[xlators/mgmt/glusterd/src/glusterd-utils.c:6342]: (error) Possible null pointer dereference: path_tokens
[xlators/mgmt/glusterd/src/glusterd-utils.c:6343]: (error) Possible null pointer dereference: path_tokens
[xlators/mount/fuse/src/fuse-bridge.c:4591]: (error) Uninitialized variable: finh
[xlators/mount/fuse/src/fuse-bridge.c:3004]: (error) Possible null pointer dereference: state
[xlators/nfs/server/src/nfs-common.c:89]: (error) Dangerous usage of 'volname' (strncpy doesn't always null-terminate it).
[xlators/performance/quick-read/src/quick-read.c:585]: (error) Possible null pointer dereference: iobuf

Rerunning cppcheck afterwards:

As before, test program:
[extras/test/test-ffop.c:27]: (error) Buffer overrun possible for long command line arguments.

As before, believed to be false positive:
[geo-replication/src/gsyncd.c:99]: (error) Memory leak: str
[geo-replication/src/gsyncd.c:395]: (error) Memory leak: argv
[xlators/nfs/server/src/nlm4.c:1200]: (error) Possible null pointer dereference: fde

As before, not built:
[xlators/cluster/ha/src/ha.c:2699]: (error) Possible null pointer dereference: priv

False positive after fix:
[heal/src/glfs-heal.c:356]: (error) Possible null pointer dereference: remote_subvol
[xlators/cluster/stripe/src/stripe.c:4963]: (error) Possible null pointer dereference: local

Change-Id: Ib3029d3223f5a13e2ac386a527d64d5ffe3ecb90
BUG: 1092037
Signed-off-by: Kaleb S. KEITHLEY &lt;kkeithle@redhat.com&gt;
Reviewed-on: http://review.gluster.org/7605
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Niels de Vos &lt;ndevos@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
See http://review.gluster.org/#/c/7583/ BZ 1086460

AFAICT these are false positives:

[geo-replication/src/gsyncd.c:99]: (error) Memory leak: str
[geo-replication/src/gsyncd.c:395]: (error) Memory leak: argv
[xlators/nfs/server/src/nlm4.c:1200]: (error) Possible null pointer dereference: fde

Program exits, resource leak not an issue
[extras/geo-rep/gsync-sync-gfid.c:105]: (error) Resource leak: fp

Test program:
[extras/test/test-ffop.c:27]: (error) Buffer overrun possible for long command line arguments.

Not built:
[xlators/cluster/ha/src/ha.c:2699]: (error) Possible null pointer dereference: priv

The remainder are fixed with this change-set:

[heal/src/glfs-heal.c:357]: (error) Possible null pointer dereference: remote_subvol
[libglusterfs/src/xlator.c:648]: (error) Uninitialized variable: gfid
[libglusterfs/src/xlator.c:649]: (error) Uninitialized variable: gfid
[xlators/cluster/afr/src/afr-inode-write.c:469]: (error) Possible null pointer dereference: frame
[xlators/cluster/afr/src/afr-self-heal-common.c:1704]: (error) Possible null pointer dereference: local
[xlators/cluster/dht/src/dht-rebalance.c:1643]: (error) Possible null pointer dereference: ctx
[xlators/cluster/stripe/src/stripe.c:4963]: (error) Possible null pointer dereference: local
[xlators/features/changelog/src/changelog.c:1464]: (error) Possible null pointer dereference: priv
[xlators/mgmt/glusterd/src/glusterd-geo-rep.c:1656]: (error) Possible null pointer dereference: command
[xlators/mgmt/glusterd/src/glusterd-replace-brick.c:914]: (error) Resource leak: file
[xlators/mgmt/glusterd/src/glusterd-replace-brick.c:998]: (error) Resource leak: file
[xlators/mgmt/glusterd/src/glusterd-sm.c:248]: (error) Possible null pointer dereference: new_ev_ctx
[xlators/mgmt/glusterd/src/glusterd-store.c:1332]: (error) Possible null pointer dereference: handle
[xlators/mgmt/glusterd/src/glusterd-utils.c:4706]: (error) Possible null pointer dereference: this
[xlators/mgmt/glusterd/src/glusterd-utils.c:5613]: (error) Possible null pointer dereference: this
[xlators/mgmt/glusterd/src/glusterd-utils.c:6342]: (error) Possible null pointer dereference: path_tokens
[xlators/mgmt/glusterd/src/glusterd-utils.c:6343]: (error) Possible null pointer dereference: path_tokens
[xlators/mount/fuse/src/fuse-bridge.c:4591]: (error) Uninitialized variable: finh
[xlators/mount/fuse/src/fuse-bridge.c:3004]: (error) Possible null pointer dereference: state
[xlators/nfs/server/src/nfs-common.c:89]: (error) Dangerous usage of 'volname' (strncpy doesn't always null-terminate it).
[xlators/performance/quick-read/src/quick-read.c:585]: (error) Possible null pointer dereference: iobuf

Rerunning cppcheck afterwards:

As before, test program:
[extras/test/test-ffop.c:27]: (error) Buffer overrun possible for long command line arguments.

As before, believed to be false positive:
[geo-replication/src/gsyncd.c:99]: (error) Memory leak: str
[geo-replication/src/gsyncd.c:395]: (error) Memory leak: argv
[xlators/nfs/server/src/nlm4.c:1200]: (error) Possible null pointer dereference: fde

As before, not built:
[xlators/cluster/ha/src/ha.c:2699]: (error) Possible null pointer dereference: priv

False positive after fix:
[heal/src/glfs-heal.c:356]: (error) Possible null pointer dereference: remote_subvol
[xlators/cluster/stripe/src/stripe.c:4963]: (error) Possible null pointer dereference: local

Change-Id: Ib3029d3223f5a13e2ac386a527d64d5ffe3ecb90
BUG: 1092037
Signed-off-by: Kaleb S. KEITHLEY &lt;kkeithle@redhat.com&gt;
Reviewed-on: http://review.gluster.org/7605
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Niels de Vos &lt;ndevos@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>logs: Do selective logging for errnos</title>
<updated>2014-10-22T07:32:40+00:00</updated>
<author>
<name>Pranith Kumar K</name>
<email>pkarampu@redhat.com</email>
</author>
<published>2014-10-21T10:48:16+00:00</published>
<link rel='alternate' type='text/html' href='https://fedorapeople.org/cgit/anoopcs/public_git/glusterfs.git/commit/?id=5fff385333db750561ffd026af09e52a8c8c16e6'/>
<id>5fff385333db750561ffd026af09e52a8c8c16e6</id>
<content type='text'>
        Backport of http://review.gluster.org/8918
                    http://review.gluster.org/8955

Problem:
Just after replace-brick the mount logs are filled with ENOENT/ESTALE
warning logs because the file is yet to be self-healed now that the
brick is new.

Fix:
Do conditional logging for the logs. ENOENT/ESTALE will be logged at
lower log level. Only when debug logs are enabled, these logs will
be written to the logfile.

BUG: 1155073
Change-Id: Icf06f2fc4f2f91e199de24a88bcb0ce9b8955ebd
Signed-off-by: Pranith Kumar K &lt;pkarampu@redhat.com&gt;
Reviewed-on: http://review.gluster.org/8960
Reviewed-by: Krutika Dhananjay &lt;kdhananj@redhat.com&gt;
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Niels de Vos &lt;ndevos@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
        Backport of http://review.gluster.org/8918
                    http://review.gluster.org/8955

Problem:
Just after replace-brick the mount logs are filled with ENOENT/ESTALE
warning logs because the file is yet to be self-healed now that the
brick is new.

Fix:
Do conditional logging for the logs. ENOENT/ESTALE will be logged at
lower log level. Only when debug logs are enabled, these logs will
be written to the logfile.

BUG: 1155073
Change-Id: Icf06f2fc4f2f91e199de24a88bcb0ce9b8955ebd
Signed-off-by: Pranith Kumar K &lt;pkarampu@redhat.com&gt;
Reviewed-on: http://review.gluster.org/8960
Reviewed-by: Krutika Dhananjay &lt;kdhananj@redhat.com&gt;
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Niels de Vos &lt;ndevos@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>libglusterfs/syncop: implement inodelk</title>
<updated>2014-10-01T10:34:09+00:00</updated>
<author>
<name>Raghavendra G</name>
<email>rgowdapp@redhat.com</email>
</author>
<published>2014-09-10T17:55:27+00:00</published>
<link rel='alternate' type='text/html' href='https://fedorapeople.org/cgit/anoopcs/public_git/glusterfs.git/commit/?id=16cc2a73d775d4f013f7abd68db547fd512f82f4'/>
<id>16cc2a73d775d4f013f7abd68db547fd512f82f4</id>
<content type='text'>
Change-Id: Iea489157490b70cb2bb03576b0d4943c6d8f052d
BUG: 1140348
Signed-off-by: Raghavendra G &lt;rgowdapp@redhat.com&gt;
Reviewed-on: http://review.gluster.org/8522
Reviewed-by: Pranith Kumar Karampuri &lt;pkarampu@redhat.com&gt;
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Vijay Bellur &lt;vbellur@redhat.com&gt;
(cherry picked from commit 172100209e531e94168d0974bfb0995704d9dddd)
Signed-off-by: Nithya Balachandran &lt;nbalacha@redhat.com&gt;
Reviewed-on: http://review.gluster.org/8723
Reviewed-by: Shyamsundar Ranganathan &lt;srangana@redhat.com&gt;
Reviewed-by: Niels de Vos &lt;ndevos@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Change-Id: Iea489157490b70cb2bb03576b0d4943c6d8f052d
BUG: 1140348
Signed-off-by: Raghavendra G &lt;rgowdapp@redhat.com&gt;
Reviewed-on: http://review.gluster.org/8522
Reviewed-by: Pranith Kumar Karampuri &lt;pkarampu@redhat.com&gt;
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Vijay Bellur &lt;vbellur@redhat.com&gt;
(cherry picked from commit 172100209e531e94168d0974bfb0995704d9dddd)
Signed-off-by: Nithya Balachandran &lt;nbalacha@redhat.com&gt;
Reviewed-on: http://review.gluster.org/8723
Reviewed-by: Shyamsundar Ranganathan &lt;srangana@redhat.com&gt;
Reviewed-by: Niels de Vos &lt;ndevos@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>cluster/dht: Modified logic of linkto file deletion on non-hashed</title>
<updated>2014-09-17T15:34:54+00:00</updated>
<author>
<name>Venkatesh Somyajulu</name>
<email>vsomyaju@redhat.com</email>
</author>
<published>2014-09-10T17:22:43+00:00</published>
<link rel='alternate' type='text/html' href='https://fedorapeople.org/cgit/anoopcs/public_git/glusterfs.git/commit/?id=e24e812d25f10c008b80d72bc8b1fb2c401bd892'/>
<id>e24e812d25f10c008b80d72bc8b1fb2c401bd892</id>
<content type='text'>
Currently whenever dht_lookup_everywhere gets called, if in
dht_lookup_everywhere_cbk, a linkto file is found on non-hashed
subvolume, file is unlinked. But there are cases when this file
is under migration. Under such condition, we should avoid deletion
of file.

When  some other rebalance process changes the layout of parent
such that dst_file (w.r.t. migration) falls on non-hashed node,
then may be lookup could have found it as linkto file but just
before unlink, file  is under migration or already migrated
In such cased unlink can be avoided.

Race:
-------
If we have two bricks (brick-1 and brick-2) with initial file "a"
under BaseDir which is hashed as well as cached on (brick-1).

Assume "a"  hashing gives 44.

                              Brick-1              Brick-2

Initial Setup:               BaseDir/a             BaseDir
                             [1-50]                [51-100]

Now add new-brick Brick-3.

1. Rebalance-1 on node Node-1 (Brick-1 node) will reset
the BaseDir Layout.

2. After that it will perform
a)  Create linkto file on  new-hashed (brick-2)
b)  Perform file migration.

1.Rebalance-1 Fixes the base-layout:
                 Brick-1             Brick-2           Brick-3
                 ---------         ----------         ------------
                 BaseDir/a            BaseDir           BaseDir
                  [1-33]              [34-66]           [67-100]

2. Only a) is     BaseDir/a          BaseDir/a(linkto)   BaseDir
   performed                         Create linktofile

Now rebalance 2 on node-2 jumped in and it will perform
step 1 and 2-a.

After (rebal-2, step-1), it changes the layout of the BaseDir.
                    BaseDir/a     BaseDir/a(link)    BaseDir
                    [67-100]           [1-33]        [34-66]

For  (rebale-2, step-2), It will perform lookup at Brick-3 as w.r.t new
layout 44 falls for brick-3. But lookup will fail.
So  dht_lookup_everywhere gets called.

NOTE: On brick-2 by rebalance-1, a linkto file was created.

Currently that linkto files gets deleted by rebalance-2 lookup as it
is considered as stale linkto file.  But  with patch if rebalance is
already in progress or rebalance is over,  linkto file will not be
unlinked. If rebalance is in progress fd will be  open and if rebalance
is over then linkto file wont be set.

Change-Id: I3fee0d28de3c76197325536a9e30099d2413f079
BUG: 1129541
Signed-off-by: Venkatesh Somyajulu &lt;vsomyaju@redhat.com&gt;
Reviewed-on: http://review.gluster.org/8345
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Raghavendra G &lt;rgowdapp@redhat.com&gt;
Reviewed-by: Shyamsundar Ranganathan &lt;srangana@redhat.com&gt;
Reviewed-by: Vijay Bellur &lt;vbellur@redhat.com&gt;
(cherry picked from commit 966997992bdbd5fffc632bf705678e287ed50bf7)
Signed-off-by: Nithya Balachandran &lt;nbalacha@redhat.com&gt;
Reviewed-on: http://review.gluster.org/8719
Reviewed-by: Jeff Darcy &lt;jdarcy@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Currently whenever dht_lookup_everywhere gets called, if in
dht_lookup_everywhere_cbk, a linkto file is found on non-hashed
subvolume, file is unlinked. But there are cases when this file
is under migration. Under such condition, we should avoid deletion
of file.

When  some other rebalance process changes the layout of parent
such that dst_file (w.r.t. migration) falls on non-hashed node,
then may be lookup could have found it as linkto file but just
before unlink, file  is under migration or already migrated
In such cased unlink can be avoided.

Race:
-------
If we have two bricks (brick-1 and brick-2) with initial file "a"
under BaseDir which is hashed as well as cached on (brick-1).

Assume "a"  hashing gives 44.

                              Brick-1              Brick-2

Initial Setup:               BaseDir/a             BaseDir
                             [1-50]                [51-100]

Now add new-brick Brick-3.

1. Rebalance-1 on node Node-1 (Brick-1 node) will reset
the BaseDir Layout.

2. After that it will perform
a)  Create linkto file on  new-hashed (brick-2)
b)  Perform file migration.

1.Rebalance-1 Fixes the base-layout:
                 Brick-1             Brick-2           Brick-3
                 ---------         ----------         ------------
                 BaseDir/a            BaseDir           BaseDir
                  [1-33]              [34-66]           [67-100]

2. Only a) is     BaseDir/a          BaseDir/a(linkto)   BaseDir
   performed                         Create linktofile

Now rebalance 2 on node-2 jumped in and it will perform
step 1 and 2-a.

After (rebal-2, step-1), it changes the layout of the BaseDir.
                    BaseDir/a     BaseDir/a(link)    BaseDir
                    [67-100]           [1-33]        [34-66]

For  (rebale-2, step-2), It will perform lookup at Brick-3 as w.r.t new
layout 44 falls for brick-3. But lookup will fail.
So  dht_lookup_everywhere gets called.

NOTE: On brick-2 by rebalance-1, a linkto file was created.

Currently that linkto files gets deleted by rebalance-2 lookup as it
is considered as stale linkto file.  But  with patch if rebalance is
already in progress or rebalance is over,  linkto file will not be
unlinked. If rebalance is in progress fd will be  open and if rebalance
is over then linkto file wont be set.

Change-Id: I3fee0d28de3c76197325536a9e30099d2413f079
BUG: 1129541
Signed-off-by: Venkatesh Somyajulu &lt;vsomyaju@redhat.com&gt;
Reviewed-on: http://review.gluster.org/8345
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Raghavendra G &lt;rgowdapp@redhat.com&gt;
Reviewed-by: Shyamsundar Ranganathan &lt;srangana@redhat.com&gt;
Reviewed-by: Vijay Bellur &lt;vbellur@redhat.com&gt;
(cherry picked from commit 966997992bdbd5fffc632bf705678e287ed50bf7)
Signed-off-by: Nithya Balachandran &lt;nbalacha@redhat.com&gt;
Reviewed-on: http://review.gluster.org/8719
Reviewed-by: Jeff Darcy &lt;jdarcy@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>dict: add dict_set_dynstr_with_alloc</title>
<updated>2014-08-15T16:45:52+00:00</updated>
<author>
<name>Niels de Vos</name>
<email>ndevos@redhat.com</email>
</author>
<published>2014-08-14T15:24:12+00:00</published>
<link rel='alternate' type='text/html' href='https://fedorapeople.org/cgit/anoopcs/public_git/glusterfs.git/commit/?id=2dfe3715b56a90d5b7df914c7b67d308b0b45b67'/>
<id>2dfe3715b56a90d5b7df914c7b67d308b0b45b67</id>
<content type='text'>
There is an overwhelming no. of instances of the following pattern in
glusterd module.

    ...

    char *dynstr = gf_strdup (str);
    if (!dynstr)
       goto err;
    ret = dict_set_dynstr (dict, key, dynstr);
    if (ret)
       goto err;

    ...

With this changes it would look as below,

   ret = dict_set_dynstr_with_alloc (dict, key, str);
   if (ret)
       goto err;

Cherry picked from commit a9d4d369efc978511e3cb69e5643945710cc9416:
&gt; Change-Id: I6a47b1cbab4834badadc48c56d0b5c8c06c6dd4d
&gt; Signed-off-by: Krishnan Parthasarathi &lt;kparthas@redhat.com&gt;
&gt; Reviewed-on: http://review.gluster.org/7379
&gt; Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
&gt; Reviewed-by: Jeff Darcy &lt;jdarcy@redhat.com&gt;

Backport notes:
  Included this change to accommodate additional backports.

BUG: 1081016
Change-Id: I6a47b1cbab4834badadc48c56d0b5c8c06c6dd4d
Signed-off-by: Niels de Vos &lt;ndevos@redhat.com&gt;
Reviewed-on: http://review.gluster.org/8489
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Kaleb KEITHLEY &lt;kkeithle@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
There is an overwhelming no. of instances of the following pattern in
glusterd module.

    ...

    char *dynstr = gf_strdup (str);
    if (!dynstr)
       goto err;
    ret = dict_set_dynstr (dict, key, dynstr);
    if (ret)
       goto err;

    ...

With this changes it would look as below,

   ret = dict_set_dynstr_with_alloc (dict, key, str);
   if (ret)
       goto err;

Cherry picked from commit a9d4d369efc978511e3cb69e5643945710cc9416:
&gt; Change-Id: I6a47b1cbab4834badadc48c56d0b5c8c06c6dd4d
&gt; Signed-off-by: Krishnan Parthasarathi &lt;kparthas@redhat.com&gt;
&gt; Reviewed-on: http://review.gluster.org/7379
&gt; Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
&gt; Reviewed-by: Jeff Darcy &lt;jdarcy@redhat.com&gt;

Backport notes:
  Included this change to accommodate additional backports.

BUG: 1081016
Change-Id: I6a47b1cbab4834badadc48c56d0b5c8c06c6dd4d
Signed-off-by: Niels de Vos &lt;ndevos@redhat.com&gt;
Reviewed-on: http://review.gluster.org/8489
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Kaleb KEITHLEY &lt;kkeithle@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>client_t: Fix memory leaks</title>
<updated>2014-07-14T09:38:19+00:00</updated>
<author>
<name>Pranith Kumar K</name>
<email>pkarampu@redhat.com</email>
</author>
<published>2014-07-05T06:49:28+00:00</published>
<link rel='alternate' type='text/html' href='https://fedorapeople.org/cgit/anoopcs/public_git/glusterfs.git/commit/?id=14aedbab7f07b581510677f7f036be5b35b39ff2'/>
<id>14aedbab7f07b581510677f7f036be5b35b39ff2</id>
<content type='text'>
        Backport of http://review.gluster.org/8247

- Assign frame-&gt;root-&gt;client so that gf_client_unref happens
  in server_connection_cleanup_flush_cbk
- Avoid taking extra ref in gf_client_get

TODO:
The whole reason why there are two types of refs
bind, ref-count is to avoid lock inside lock which
is not the case now. I will be sending one more patch
which will accomplish that as well as changing the
tablearray to list

BUG: 1116672
Change-Id: Ica87b9cbf02cae34c10789cfb56d1ccdc393cbf0
Signed-off-by: Pranith Kumar K &lt;pkarampu@redhat.com&gt;
Reviewed-on: http://review.gluster.org/8289
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Niels de Vos &lt;ndevos@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
        Backport of http://review.gluster.org/8247

- Assign frame-&gt;root-&gt;client so that gf_client_unref happens
  in server_connection_cleanup_flush_cbk
- Avoid taking extra ref in gf_client_get

TODO:
The whole reason why there are two types of refs
bind, ref-count is to avoid lock inside lock which
is not the case now. I will be sending one more patch
which will accomplish that as well as changing the
tablearray to list

BUG: 1116672
Change-Id: Ica87b9cbf02cae34c10789cfb56d1ccdc393cbf0
Signed-off-by: Pranith Kumar K &lt;pkarampu@redhat.com&gt;
Reviewed-on: http://review.gluster.org/8289
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Niels de Vos &lt;ndevos@redhat.com&gt;
</pre>
</div>
</content>
</entry>
</feed>
