<feed xmlns='http://www.w3.org/2005/Atom'>
<title>glusterfs.git, branch v3.3.1qa1</title>
<subtitle></subtitle>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/'/>
<entry>
<title>afr: Avoid excessive logging in self-heal.</title>
<updated>2012-08-17T09:22:02+00:00</updated>
<author>
<name>Krishnan Parthasarathi</name>
<email>kparthas@redhat.com</email>
</author>
<published>2012-08-17T08:49:39+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=753f8c13245220c4b9ec6364a5e644274a36b1d6'/>
<id>753f8c13245220c4b9ec6364a5e644274a36b1d6</id>
<content type='text'>
- (Excessive) Logging has been very useful as 'bread-crumbs' in
  many a root-cause analyses. This patch aims at avoiding logging when
  the information could be reconstructed using the xattrs, statedump,
  and/or "volume heal" CLI commands.

Change-Id: I8f646cbee44e98495ea6963f9dfcae95375c8900
BUG: 844804
Signed-off-by: Krishnan Parthasarathi &lt;kparthas@redhat.com&gt;
Reviewed-on: http://review.gluster.com/3827
Reviewed-by: Pranith Kumar Karampuri &lt;pranithk@gluster.com&gt;
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Vijay Bellur &lt;vbellur@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
- (Excessive) Logging has been very useful as 'bread-crumbs' in
  many a root-cause analyses. This patch aims at avoiding logging when
  the information could be reconstructed using the xattrs, statedump,
  and/or "volume heal" CLI commands.

Change-Id: I8f646cbee44e98495ea6963f9dfcae95375c8900
BUG: 844804
Signed-off-by: Krishnan Parthasarathi &lt;kparthas@redhat.com&gt;
Reviewed-on: http://review.gluster.com/3827
Reviewed-by: Pranith Kumar Karampuri &lt;pranithk@gluster.com&gt;
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Vijay Bellur &lt;vbellur@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>cluster/afr: Handle child_up &amp; fd not opened case in xaction</title>
<updated>2012-08-17T08:14:38+00:00</updated>
<author>
<name>Pranith Kumar K</name>
<email>pranithk@gluster.com</email>
</author>
<published>2012-07-30T15:31:21+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=1df75bc835a75f17fa0fcd3722ef68f05f5f3200'/>
<id>1df75bc835a75f17fa0fcd3722ef68f05f5f3200</id>
<content type='text'>
RCA:
When an fd is opened while a brick is down, after the brick
comes back up afr issues open on the other brick. It can
fail for a number of reasons (enoent etc). While the system
is in that state, inode/entrylks pre-op happen only on the
brick that is up and fd is opened for fd-fops. post-op should
consider only the bricks where both pre-op and fop succeeded
as success, rest of them as failures. Code now marks only the
children that are down as failures as opposed to child_down &amp;
fd-not-opened. This makes change-log appear as success on the
subvolume where we did not do any fop leading to no change-log
but differences in data/metadata for reg-files.

Fix:
Mark non-participants of fop as failure. This is tracked in
transaction.pre_op[].

Tests:
Simulated the scenario using err-gen on top of one of the client
xlator which fails all fops always. Performed fops and the changelog
represented pending fops on the brick with err-gen loaded. Tested
the case of brick down and perform entry/metadata/data operations
to confirm they still work as expected.

Change-Id: I41905936126b19abba56ca581c0301a894507e1a
BUG: 844987
Signed-off-by: Pranith Kumar K &lt;pranithk@gluster.com&gt;
Reviewed-on: http://review.gluster.com/3776
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Vijay Bellur &lt;vbellur@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
RCA:
When an fd is opened while a brick is down, after the brick
comes back up afr issues open on the other brick. It can
fail for a number of reasons (enoent etc). While the system
is in that state, inode/entrylks pre-op happen only on the
brick that is up and fd is opened for fd-fops. post-op should
consider only the bricks where both pre-op and fop succeeded
as success, rest of them as failures. Code now marks only the
children that are down as failures as opposed to child_down &amp;
fd-not-opened. This makes change-log appear as success on the
subvolume where we did not do any fop leading to no change-log
but differences in data/metadata for reg-files.

Fix:
Mark non-participants of fop as failure. This is tracked in
transaction.pre_op[].

Tests:
Simulated the scenario using err-gen on top of one of the client
xlator which fails all fops always. Performed fops and the changelog
represented pending fops on the brick with err-gen loaded. Tested
the case of brick down and perform entry/metadata/data operations
to confirm they still work as expected.

Change-Id: I41905936126b19abba56ca581c0301a894507e1a
BUG: 844987
Signed-off-by: Pranith Kumar K &lt;pranithk@gluster.com&gt;
Reviewed-on: http://review.gluster.com/3776
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Vijay Bellur &lt;vbellur@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>rpc: Reduce frame-timeout for glusterd connections</title>
<updated>2012-08-17T08:13:01+00:00</updated>
<author>
<name>Kaushal M</name>
<email>kaushal@redhat.com</email>
</author>
<published>2012-08-17T07:42:33+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=30a9ebd91339f36d092f46bbba116fa4047fb8c5'/>
<id>30a9ebd91339f36d092f46bbba116fa4047fb8c5</id>
<content type='text'>
Reduce frame-timeout for glusterd connections from 30mins to 10 mins. 30mins is
too long when compared to cli timeout of 2mins. Changing to 10mins reduces the
disparity between cli and glusterd.

Also, fix glusterfs_submit_reply() so that a reply is sent even if serialize
failed.

BUG: 843003
Change-Id: Ie8d5ec16fbbb54318a5935a47065e66fd3338b87
Signed-off-by: Kaushal M &lt;kaushal@redhat.com&gt;
Reviewed-on: http://review.gluster.com/3812
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Vijay Bellur &lt;vbellur@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Reduce frame-timeout for glusterd connections from 30mins to 10 mins. 30mins is
too long when compared to cli timeout of 2mins. Changing to 10mins reduces the
disparity between cli and glusterd.

Also, fix glusterfs_submit_reply() so that a reply is sent even if serialize
failed.

BUG: 843003
Change-Id: Ie8d5ec16fbbb54318a5935a47065e66fd3338b87
Signed-off-by: Kaushal M &lt;kaushal@redhat.com&gt;
Reviewed-on: http://review.gluster.com/3812
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Vijay Bellur &lt;vbellur@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>core: check for pre-allocated blocks in backend fs, fix it.</title>
<updated>2012-08-17T06:58:13+00:00</updated>
<author>
<name>Amar Tumballi</name>
<email>amarts@redhat.com</email>
</author>
<published>2012-07-14T02:55:56+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=b96e499e9e290547a655072fede969f51854e2d8'/>
<id>b96e499e9e290547a655072fede969f51854e2d8</id>
<content type='text'>
There is a possibility that the backend FS (like XFS) can
allocate blocks beyond EOF for better performance reasons, which
results in 'st_blocks' with higher values than what is consumed by
the file descriptor. This would break few logic inside GlusterFS,
like quota behavior etc, thus we need the exact number of blocks
which are consumed by the file to the higher layers inside GlusterFS.

Currently, this logic won't work for sparse files (ie, file with holes)

Change-Id: Ied216733a8862e84f7da8386ae0a144f3f5cd5f2
BUG: 839589
Signed-off-by: Amar Tumballi &lt;amarts@redhat.com&gt;
Reviewed-on: http://review.gluster.com/3671
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Vijay Bellur &lt;vbellur@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
There is a possibility that the backend FS (like XFS) can
allocate blocks beyond EOF for better performance reasons, which
results in 'st_blocks' with higher values than what is consumed by
the file descriptor. This would break few logic inside GlusterFS,
like quota behavior etc, thus we need the exact number of blocks
which are consumed by the file to the higher layers inside GlusterFS.

Currently, this logic won't work for sparse files (ie, file with holes)

Change-Id: Ied216733a8862e84f7da8386ae0a144f3f5cd5f2
BUG: 839589
Signed-off-by: Amar Tumballi &lt;amarts@redhat.com&gt;
Reviewed-on: http://review.gluster.com/3671
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Vijay Bellur &lt;vbellur@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title> cluster/dht: Optimize readdirp calls in DHT</title>
<updated>2012-08-17T05:25:17+00:00</updated>
<author>
<name>shishir gowda</name>
<email>sgowda@redhat.com</email>
</author>
<published>2012-08-13T05:50:17+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=502c95bdfb35640fb424b37b080664e9c1639a86'/>
<id>502c95bdfb35640fb424b37b080664e9c1639a86</id>
<content type='text'>
Bring in option which is supported by posix xlator
to filter out directory's entries from being returned.
DHT would now request non-first subvols to filter out
directory entries.

dht xlator-option readdir-optimize will enable this
optimization

Change-Id: Ibf99f1bef501f285ff44a1cecfbebee9e16063b6
BUG: 838199
Signed-off-by: shishir gowda &lt;sgowda@redhat.com&gt;
Reviewed-on: http://review.gluster.com/3806
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Vijay Bellur &lt;vbellur@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Bring in option which is supported by posix xlator
to filter out directory's entries from being returned.
DHT would now request non-first subvols to filter out
directory entries.

dht xlator-option readdir-optimize will enable this
optimization

Change-Id: Ibf99f1bef501f285ff44a1cecfbebee9e16063b6
BUG: 838199
Signed-off-by: shishir gowda &lt;sgowda@redhat.com&gt;
Reviewed-on: http://review.gluster.com/3806
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Vijay Bellur &lt;vbellur@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>performance/io-cache: use pthread_mutex_trylock to hold mutex in statedumps</title>
<updated>2012-08-16T14:17:34+00:00</updated>
<author>
<name>Raghavendra Bhat</name>
<email>raghavendra@redhat.com</email>
</author>
<published>2012-08-09T12:17:34+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=28328417bff73b13392e95a07c3d359c881bebc8'/>
<id>28328417bff73b13392e95a07c3d359c881bebc8</id>
<content type='text'>
Do not use pthread_mutex_lock and gf_log functions while dumping information
to statedump, to avoid deadlocks.

Change-Id: I6569366856fc2bc0fefb49c8379e2e4337717ce4
BUG: 843787
Signed-off-by: Raghavendra Bhat &lt;raghavendra@redhat.com&gt;
Reviewed-on: http://review.gluster.com/3799
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Vijay Bellur &lt;vbellur@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Do not use pthread_mutex_lock and gf_log functions while dumping information
to statedump, to avoid deadlocks.

Change-Id: I6569366856fc2bc0fefb49c8379e2e4337717ce4
BUG: 843787
Signed-off-by: Raghavendra Bhat &lt;raghavendra@redhat.com&gt;
Reviewed-on: http://review.gluster.com/3799
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Vijay Bellur &lt;vbellur@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>performance/write-behind: use pthread_mutex_trylock to hold mutex in statedumps</title>
<updated>2012-08-16T05:51:59+00:00</updated>
<author>
<name>Raghavendra Bhat</name>
<email>raghavendra@redhat.com</email>
</author>
<published>2012-08-13T13:46:43+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=cb7647f67390920fa2aa25fd0af7c84787c08ed0'/>
<id>cb7647f67390920fa2aa25fd0af7c84787c08ed0</id>
<content type='text'>
Change-Id: I24c83b1b5e83ef3e38a019043c7fbca13b19ff43
BUG: 841543
Signed-off-by: Raghavendra Bhat &lt;raghavendra@redhat.com&gt;
Reviewed-on: http://review.gluster.com/3815
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Vijay Bellur &lt;vbellur@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Change-Id: I24c83b1b5e83ef3e38a019043c7fbca13b19ff43
BUG: 841543
Signed-off-by: Raghavendra Bhat &lt;raghavendra@redhat.com&gt;
Reviewed-on: http://review.gluster.com/3815
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Vijay Bellur &lt;vbellur@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>cluster/stripe: Filter coalesce xattr from getfattr</title>
<updated>2012-08-16T05:48:56+00:00</updated>
<author>
<name>Shylesh Kumar</name>
<email>shmohan@redhat.com</email>
</author>
<published>2012-08-13T06:40:38+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=41d3605fab2f0ce8c8b4c5d976fc1a013c823e3d'/>
<id>41d3605fab2f0ce8c8b4c5d976fc1a013c823e3d</id>
<content type='text'>
Change-Id: I1c5740e29699ef464a3d30365396711f03c24974
Signed-off-by: Shylesh Kumar &lt;shmohan@redhat.com&gt;
BUG: 801887
Reviewed-on: http://review.gluster.com/3809
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Shishir Gowda &lt;sgowda@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Change-Id: I1c5740e29699ef464a3d30365396711f03c24974
Signed-off-by: Shylesh Kumar &lt;shmohan@redhat.com&gt;
BUG: 801887
Reviewed-on: http://review.gluster.com/3809
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Shishir Gowda &lt;sgowda@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>NetBSD swapcontext() portability fix</title>
<updated>2012-08-13T13:12:14+00:00</updated>
<author>
<name>Emmanuel Dreyfus</name>
<email>manu@netbsd.org</email>
</author>
<published>2012-08-13T13:00:45+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=3e5e736043cdb0f48ce617d71c974912a96acef0'/>
<id>3e5e736043cdb0f48ce617d71c974912a96acef0</id>
<content type='text'>
This is a backport of http://review.gluster.com/#change,3794
Patchset 8d47741d5a041e632d9c74c5936fcfaf6ceaaa78

This has been tested on release-3.3 for a few days.

BUG: 764655
Change-Id: I75d990649e9cdfbd7dd327ed1071f6ab7ab49f4a
Signed-off-by: Emmanuel Dreyfus &lt;manu@netbsd.org&gt;
Reviewed-on: http://review.gluster.com/3813
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Anand Avati &lt;avati@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This is a backport of http://review.gluster.com/#change,3794
Patchset 8d47741d5a041e632d9c74c5936fcfaf6ceaaa78

This has been tested on release-3.3 for a few days.

BUG: 764655
Change-Id: I75d990649e9cdfbd7dd327ed1071f6ab7ab49f4a
Signed-off-by: Emmanuel Dreyfus &lt;manu@netbsd.org&gt;
Reviewed-on: http://review.gluster.com/3813
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Anand Avati &lt;avati@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>cluster/afr: Avoid setting split-brain outside inode locks</title>
<updated>2012-08-13T04:51:39+00:00</updated>
<author>
<name>Pranith Kumar K</name>
<email>pranithk@gluster.com</email>
</author>
<published>2012-07-18T04:58:18+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=12aa31278c651f36c2ea1c0698ba789aa3f9262c'/>
<id>12aa31278c651f36c2ea1c0698ba789aa3f9262c</id>
<content type='text'>
RCA:
The bug is observed because the decision to mark
a file in split-brain is taken outside appropriate locks.
Lookup gathers xattrs outside any lock. The xattrs being
in split-brain in lookup should only be taken as a hint.
Appropriate inodelks should be taken before confirming
a split-brain. Self-heal confirms this at the moment.

Fix:
Self-heals are launched to inspect xattrs when the
data/metadata self-heal options are turned on.
Decision to set/reset split-brain flag is taken inside
appropriate locks.

Known Issue After fix:
If data/metadata self-heal is turned off, inspecting of
xattrs could not be performed so split-brain behavior
does not work correctly if the self-heal options are turned off.
This bug is handled only in upstream.

Change-Id: I59a43d5ce7bf9ca35bff54a51bf4cfa55d717a9e
BUG: 833727
Signed-off-by: Pranith Kumar K &lt;pranithk@gluster.com&gt;
Reviewed-on: http://review.gluster.com/3691
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Vijay Bellur &lt;vbellur@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
RCA:
The bug is observed because the decision to mark
a file in split-brain is taken outside appropriate locks.
Lookup gathers xattrs outside any lock. The xattrs being
in split-brain in lookup should only be taken as a hint.
Appropriate inodelks should be taken before confirming
a split-brain. Self-heal confirms this at the moment.

Fix:
Self-heals are launched to inspect xattrs when the
data/metadata self-heal options are turned on.
Decision to set/reset split-brain flag is taken inside
appropriate locks.

Known Issue After fix:
If data/metadata self-heal is turned off, inspecting of
xattrs could not be performed so split-brain behavior
does not work correctly if the self-heal options are turned off.
This bug is handled only in upstream.

Change-Id: I59a43d5ce7bf9ca35bff54a51bf4cfa55d717a9e
BUG: 833727
Signed-off-by: Pranith Kumar K &lt;pranithk@gluster.com&gt;
Reviewed-on: http://review.gluster.com/3691
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Vijay Bellur &lt;vbellur@redhat.com&gt;
</pre>
</div>
</content>
</entry>
</feed>
