<feed xmlns='http://www.w3.org/2005/Atom'>
<title>glusterfs.git/tests, branch v3.10.9</title>
<subtitle></subtitle>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/'/>
<entry>
<title>mount/fuse: use fstat in getattr implementation if any opened fd is available</title>
<updated>2018-01-03T14:54:19+00:00</updated>
<author>
<name>Raghavendra G</name>
<email>rgowdapp@redhat.com</email>
</author>
<published>2017-11-07T10:39:37+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=83c59b690062c633a8b7478ac7a9ac762916b049'/>
<id>83c59b690062c633a8b7478ac7a9ac762916b049</id>
<content type='text'>
The restriction of using fds opened by the same Pid means fds cannot
be shared across threads of multithreaded application. Note that fops
from kernel have different Pid for different threads. Imagine
following sequence of operations:

* Turn off performance.open-behind
* Thread t1 opens an fd - fd1 - on file "file". Let's assume nodeid of
  "file" is "nodeid-file".
* Thread t2 does RENAME ("newfile", "file"). Let's assume nodeid of
  "newfile" as "nodeid-newfile".
* t2 proceeds to do fstat (fd1)

The above set of operations can sometimes result in ESTALE/ENOENT
errors. RENAME overwrites "file" with "newfile" changing its nodeid
from "nodeid-file" to "nodeid-newfile" and post RENAME, "nodeid-file" is
removed from the backend. If fstat carries nodeid-file as argument,
which can happen if lookup has not refreshed the nodeid of "file" and
since t2 doesn't have an fd opened, fuse_getattr_resume uses STAT
which will fail as "nodeid-file" no longer exists.

Since the above set of operations and sharing of fds across
multiple threads are valid, this is a bug.

The fix is to use any fd opened on the inode. In this specific example
fuse_getattr_resume will find fd1 and winds down the call as fstat
(fd1) which won't fail.

Cross-checked with "Miklos Szeredi" &lt;mszeredi.at.redhat.dot.com&gt; for
any security issues with this solution and he approves the solution.

Thanks to "Miklos Szeredi" &lt;mszeredi.at.redhat.dot.com&gt; for all the
pointers and discussions.

&gt;Change-Id: I88dd29b3607cd2594eee9d72a1637b5346c8d49c
&gt;BUG: 1510401
&gt;Signed-off-by: Raghavendra G &lt;rgowdapp@redhat.com&gt;

(cherry picked from commit 8b57378e5596f287a7b9d106dd6fb56a624b42ee)
Change-Id: I88dd29b3607cd2594eee9d72a1637b5346c8d49c
BUG: 1529086
Signed-off-by: Raghavendra G &lt;rgowdapp@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The restriction of using fds opened by the same Pid means fds cannot
be shared across threads of multithreaded application. Note that fops
from kernel have different Pid for different threads. Imagine
following sequence of operations:

* Turn off performance.open-behind
* Thread t1 opens an fd - fd1 - on file "file". Let's assume nodeid of
  "file" is "nodeid-file".
* Thread t2 does RENAME ("newfile", "file"). Let's assume nodeid of
  "newfile" as "nodeid-newfile".
* t2 proceeds to do fstat (fd1)

The above set of operations can sometimes result in ESTALE/ENOENT
errors. RENAME overwrites "file" with "newfile" changing its nodeid
from "nodeid-file" to "nodeid-newfile" and post RENAME, "nodeid-file" is
removed from the backend. If fstat carries nodeid-file as argument,
which can happen if lookup has not refreshed the nodeid of "file" and
since t2 doesn't have an fd opened, fuse_getattr_resume uses STAT
which will fail as "nodeid-file" no longer exists.

Since the above set of operations and sharing of fds across
multiple threads are valid, this is a bug.

The fix is to use any fd opened on the inode. In this specific example
fuse_getattr_resume will find fd1 and winds down the call as fstat
(fd1) which won't fail.

Cross-checked with "Miklos Szeredi" &lt;mszeredi.at.redhat.dot.com&gt; for
any security issues with this solution and he approves the solution.

Thanks to "Miklos Szeredi" &lt;mszeredi.at.redhat.dot.com&gt; for all the
pointers and discussions.

&gt;Change-Id: I88dd29b3607cd2594eee9d72a1637b5346c8d49c
&gt;BUG: 1510401
&gt;Signed-off-by: Raghavendra G &lt;rgowdapp@redhat.com&gt;

(cherry picked from commit 8b57378e5596f287a7b9d106dd6fb56a624b42ee)
Change-Id: I88dd29b3607cd2594eee9d72a1637b5346c8d49c
BUG: 1529086
Signed-off-by: Raghavendra G &lt;rgowdapp@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>glusterd: delete source brick only once in reset-brick commit force</title>
<updated>2017-10-31T18:08:14+00:00</updated>
<author>
<name>Atin Mukherjee</name>
<email>amukherj@redhat.com</email>
</author>
<published>2017-10-30T10:25:32+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=04600933bded792b4e817b8612f0b3338cb20bcc'/>
<id>04600933bded792b4e817b8612f0b3338cb20bcc</id>
<content type='text'>
While stopping the brick which is to be reset and replaced delete_brick
flag was passed as true which resulted glusterd to free up to source
brick before the actual operation. This results commit force to fail
failing to find the source brickinfo.

&gt; mainline patch : https://review.gluster.org/#/c/18581/

Change-Id: I1aa7508eff7cc9c9b5d6f5163f3bb92736d6df44
BUG: 1507880
Signed-off-by: Atin Mukherjee &lt;amukherj@redhat.com&gt;
(cherry picked from commit 0fb8acaa6ff80c43e46deac0ce66b29ae0df0ca4)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
While stopping the brick which is to be reset and replaced delete_brick
flag was passed as true which resulted glusterd to free up to source
brick before the actual operation. This results commit force to fail
failing to find the source brickinfo.

&gt; mainline patch : https://review.gluster.org/#/c/18581/

Change-Id: I1aa7508eff7cc9c9b5d6f5163f3bb92736d6df44
BUG: 1507880
Signed-off-by: Atin Mukherjee &lt;amukherj@redhat.com&gt;
(cherry picked from commit 0fb8acaa6ff80c43e46deac0ce66b29ae0df0ca4)
</pre>
</div>
</content>
</entry>
<entry>
<title>glusterd: Gluster should keep PID file in correct location</title>
<updated>2017-10-25T14:03:54+00:00</updated>
<author>
<name>Gaurav Kumar Garg</name>
<email>garg.gaurav52@gmail.com</email>
</author>
<published>2016-03-02T12:12:07+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=411a401f7e4f81f6a77eea1438a3a43c73e06104'/>
<id>411a401f7e4f81f6a77eea1438a3a43c73e06104</id>
<content type='text'>
Currently Gluster keeps process pid information of all the daemons
and brick processes in Gluster configuration file directory
(ie., /var/lib/glusterd/*).

These pid files should be seperate from configuration files.
Deletion of the configuration file directory might result into serious problems.
Also, /var/run/gluster is the default placeholder directory for pid files.

So, with this fix Gluster will keep all process pid information of all
processes in /var/run/gluster/* directory.

&gt; Change-Id: Idb09e3fccb6a7355fbac1df31082637c8d7ab5b4
&gt; BUG: 1258561
&gt; Signed-off-by: Gaurav Kumar Garg &lt;ggarg@redhat.com&gt;
&gt; Signed-off-by: Saravanakumar Arumugam &lt;sarumuga@redhat.com&gt;
&gt; Reviewed-on: https://review.gluster.org/13580
&gt; Tested-by: MOHIT AGRAWAL &lt;moagrawa@redhat.com&gt;
&gt; Smoke: Gluster Build System &lt;jenkins@build.gluster.org&gt;
&gt; CentOS-regression: Gluster Build System &lt;jenkins@build.gluster.org&gt;
&gt; Reviewed-by: Atin Mukherjee &lt;amukherj@redhat.com&gt;
&gt; (Cherry pick from commit 220d406ad13d840e950eef001a2b36f87570058d)

BUG: 1491059
Change-Id: Idb09e3fccb6a7355fbac1df31082637c8d7ab5b4
Signed-off-by: Mohit Agrawal &lt;moagrawa@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Currently Gluster keeps process pid information of all the daemons
and brick processes in Gluster configuration file directory
(ie., /var/lib/glusterd/*).

These pid files should be seperate from configuration files.
Deletion of the configuration file directory might result into serious problems.
Also, /var/run/gluster is the default placeholder directory for pid files.

So, with this fix Gluster will keep all process pid information of all
processes in /var/run/gluster/* directory.

&gt; Change-Id: Idb09e3fccb6a7355fbac1df31082637c8d7ab5b4
&gt; BUG: 1258561
&gt; Signed-off-by: Gaurav Kumar Garg &lt;ggarg@redhat.com&gt;
&gt; Signed-off-by: Saravanakumar Arumugam &lt;sarumuga@redhat.com&gt;
&gt; Reviewed-on: https://review.gluster.org/13580
&gt; Tested-by: MOHIT AGRAWAL &lt;moagrawa@redhat.com&gt;
&gt; Smoke: Gluster Build System &lt;jenkins@build.gluster.org&gt;
&gt; CentOS-regression: Gluster Build System &lt;jenkins@build.gluster.org&gt;
&gt; Reviewed-by: Atin Mukherjee &lt;amukherj@redhat.com&gt;
&gt; (Cherry pick from commit 220d406ad13d840e950eef001a2b36f87570058d)

BUG: 1491059
Change-Id: Idb09e3fccb6a7355fbac1df31082637c8d7ab5b4
Signed-off-by: Mohit Agrawal &lt;moagrawa@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>features/worm: Adding check to newloc when doing rename</title>
<updated>2017-10-25T14:03:28+00:00</updated>
<author>
<name>luneo7</name>
<email>luneo7@gmail.com</email>
</author>
<published>2017-10-10T20:17:35+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=be662aa3007898c22ad2e9d23db63f2e88a6d434'/>
<id>be662aa3007898c22ad2e9d23db63f2e88a6d434</id>
<content type='text'>
Problem: Since rename didn't check if newloc exists and it's
retention state it was possible to rename a new file that wasn't
in retention over a existing file that was in read-only state.

Cherry picked from commit 00a4dc0:
&gt; Change-Id: I63c6bbabb7bb456ebedf201cc77b878ffda62229
&gt; BUG: 1484490
&gt; Signed-off-by: luneo7 &lt;luneo7@gmail.com&gt;
&gt; Reviewed-on: https://review.gluster.org/18104
&gt; Tested-by: jiffin tony Thottan &lt;jthottan@redhat.com&gt;
&gt; Tested-by: Prashanth Pai &lt;ppai@redhat.com&gt;
&gt; Smoke: Gluster Build System &lt;jenkins@build.gluster.org&gt;
&gt; CentOS-regression: Gluster Build System &lt;jenkins@build.gluster.org&gt;
&gt; Reviewed-by: Prashanth Pai &lt;ppai@redhat.com&gt;
&gt; Reviewed-by: Karthik U S &lt;ksubrahm@redhat.com&gt;
&gt; Reviewed-by: Amar Tumballi &lt;amarts@redhat.com&gt;

Change-Id: I63c6bbabb7bb456ebedf201cc77b878ffda62229
BUG: 1480788
Signed-off-by: luneo7 &lt;luneo7@gmail.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Problem: Since rename didn't check if newloc exists and it's
retention state it was possible to rename a new file that wasn't
in retention over a existing file that was in read-only state.

Cherry picked from commit 00a4dc0:
&gt; Change-Id: I63c6bbabb7bb456ebedf201cc77b878ffda62229
&gt; BUG: 1484490
&gt; Signed-off-by: luneo7 &lt;luneo7@gmail.com&gt;
&gt; Reviewed-on: https://review.gluster.org/18104
&gt; Tested-by: jiffin tony Thottan &lt;jthottan@redhat.com&gt;
&gt; Tested-by: Prashanth Pai &lt;ppai@redhat.com&gt;
&gt; Smoke: Gluster Build System &lt;jenkins@build.gluster.org&gt;
&gt; CentOS-regression: Gluster Build System &lt;jenkins@build.gluster.org&gt;
&gt; Reviewed-by: Prashanth Pai &lt;ppai@redhat.com&gt;
&gt; Reviewed-by: Karthik U S &lt;ksubrahm@redhat.com&gt;
&gt; Reviewed-by: Amar Tumballi &lt;amarts@redhat.com&gt;

Change-Id: I63c6bbabb7bb456ebedf201cc77b878ffda62229
BUG: 1480788
Signed-off-by: luneo7 &lt;luneo7@gmail.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>md-cache: avoid checking the xattr value buffer with string functions.</title>
<updated>2017-10-25T14:00:03+00:00</updated>
<author>
<name>Günther Deschner</name>
<email>gd@samba.org</email>
</author>
<published>2017-10-09T16:05:03+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=83615a663c1ac17812c8417dc56b85be600d17e3'/>
<id>83615a663c1ac17812c8417dc56b85be600d17e3</id>
<content type='text'>
xattrs may very well contain binary, non-text data with leading 0
values. Using strcmp for checking empty values is not the appropriate
thing to do: In the best case, it might treat a binary xattr value
starting with 0 from being cached (and hence also from being reported
back with xattr). In the worst case, we might read beyond the end
of a data blob that does contain any zero byte.

We fix this by checking the length of the data blob and checking
the first byte against 0 if the length is one.

&gt; Signed-off-by: Guenther Deschner &lt;gd@samba.org&gt;
&gt; Pair-Programmed-With: Michael Adam &lt;obnox@samba.org&gt;
&gt; Change-Id: If723c465a630b8a37b6be58782a2724df7ac6b11
&gt; BUG: 1476324
&gt; Reviewed-on: https://review.gluster.org/17910
&gt; Reviewed-by: Michael Adam &lt;obnox@samba.org&gt;
&gt; Smoke: Gluster Build System &lt;jenkins@build.gluster.org&gt;
&gt; Reviewed-by: Poornima G &lt;pgurusid@redhat.com&gt;
&gt; Tested-by: Poornima G &lt;pgurusid@redhat.com&gt;
&gt; CentOS-regression: Gluster Build System &lt;jenkins@build.gluster.org&gt;
&gt; (cherry picked from commit ab4ffdac9dec1867f2d9b33242179cf2b347319d)

Change-Id: If723c465a630b8a37b6be58782a2724df7ac6b11
BUG: 1499893
Signed-off-by: Günther Deschner &lt;gd@samba.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
xattrs may very well contain binary, non-text data with leading 0
values. Using strcmp for checking empty values is not the appropriate
thing to do: In the best case, it might treat a binary xattr value
starting with 0 from being cached (and hence also from being reported
back with xattr). In the worst case, we might read beyond the end
of a data blob that does contain any zero byte.

We fix this by checking the length of the data blob and checking
the first byte against 0 if the length is one.

&gt; Signed-off-by: Guenther Deschner &lt;gd@samba.org&gt;
&gt; Pair-Programmed-With: Michael Adam &lt;obnox@samba.org&gt;
&gt; Change-Id: If723c465a630b8a37b6be58782a2724df7ac6b11
&gt; BUG: 1476324
&gt; Reviewed-on: https://review.gluster.org/17910
&gt; Reviewed-by: Michael Adam &lt;obnox@samba.org&gt;
&gt; Smoke: Gluster Build System &lt;jenkins@build.gluster.org&gt;
&gt; Reviewed-by: Poornima G &lt;pgurusid@redhat.com&gt;
&gt; Tested-by: Poornima G &lt;pgurusid@redhat.com&gt;
&gt; CentOS-regression: Gluster Build System &lt;jenkins@build.gluster.org&gt;
&gt; (cherry picked from commit ab4ffdac9dec1867f2d9b33242179cf2b347319d)

Change-Id: If723c465a630b8a37b6be58782a2724df7ac6b11
BUG: 1499893
Signed-off-by: Günther Deschner &lt;gd@samba.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>gfapi: set lkowner in glfd</title>
<updated>2017-10-17T10:50:19+00:00</updated>
<author>
<name>Soumya Koduri</name>
<email>skoduri@redhat.com</email>
</author>
<published>2017-10-17T10:42:06+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=fea9e398da9865ce193d347d14fe2d56fe9946a2'/>
<id>fea9e398da9865ce193d347d14fe2d56fe9946a2</id>
<content type='text'>
We need a provision to be able to set lkowner (which is
used to distinguish locks maintained by server) in gfapi.
Since the same lk_owner need to be used to be able to
flush the lock while closing the fd, store the lkowner
in the glfd structure itself.

A new API has been added to be able to set lkowner in glfd.

This is backport of below mainline fix -
 https://review.gluster.org/#/c/18429
 https://review.gluster.org/#/c/18522/

Change-Id: I67591d6b9a89c20b9617d52616513ff9e6c06b47
BUG: 1501955
Signed-off-by: Soumya Koduri &lt;skoduri@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
We need a provision to be able to set lkowner (which is
used to distinguish locks maintained by server) in gfapi.
Since the same lk_owner need to be used to be able to
flush the lock while closing the fd, store the lkowner
in the glfd structure itself.

A new API has been added to be able to set lkowner in glfd.

This is backport of below mainline fix -
 https://review.gluster.org/#/c/18429
 https://review.gluster.org/#/c/18522/

Change-Id: I67591d6b9a89c20b9617d52616513ff9e6c06b47
BUG: 1501955
Signed-off-by: Soumya Koduri &lt;skoduri@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>mount/fuse: Make event-history feature configurable</title>
<updated>2017-10-02T12:41:57+00:00</updated>
<author>
<name>Krutika Dhananjay</name>
<email>kdhananj@redhat.com</email>
</author>
<published>2017-09-07T13:18:34+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=2a663389c5faf31f267be7f7fa98589019463c71'/>
<id>2a663389c5faf31f267be7f7fa98589019463c71</id>
<content type='text'>
... and disable it by default.

        Backport of:
        &gt; Change-Id: Ia533788d309c78688a315dc8cd04d30fad9e9485
        &gt; Reviewed-on: https://review.gluster.org/18242
        &gt; BUG: 1467614
        &gt; cherry-picked from commit 956d43d6e89d40ee683547003b876f1f456f03b6

This is because having it disabled seems to improve performance.
This could be due to the lock contention by the different epoll threads
on the circular buff lock in the fop cbks just before writing their response
to /dev/fuse.

Just to provide some data - wrt ovirt-gluster hyperconverged
environment, I saw an increase in IOPs by 12K with event-history
disabled for randrom read workload.

Usage:
mount -t glusterfs -o event-history=on $HOSTNAME:$VOLNAME $MOUNTPOINT
OR
glusterfs --event-history=on --volfile-server=$HOSTNAME --volfile-id=$VOLNAME $MOUNTPOINT

Change-Id: Ia533788d309c78688a315dc8cd04d30fad9e9485
BUG: 1495430
Signed-off-by: Krutika Dhananjay &lt;kdhananj@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
... and disable it by default.

        Backport of:
        &gt; Change-Id: Ia533788d309c78688a315dc8cd04d30fad9e9485
        &gt; Reviewed-on: https://review.gluster.org/18242
        &gt; BUG: 1467614
        &gt; cherry-picked from commit 956d43d6e89d40ee683547003b876f1f456f03b6

This is because having it disabled seems to improve performance.
This could be due to the lock contention by the different epoll threads
on the circular buff lock in the fop cbks just before writing their response
to /dev/fuse.

Just to provide some data - wrt ovirt-gluster hyperconverged
environment, I saw an increase in IOPs by 12K with event-history
disabled for randrom read workload.

Usage:
mount -t glusterfs -o event-history=on $HOSTNAME:$VOLNAME $MOUNTPOINT
OR
glusterfs --event-history=on --volfile-server=$HOSTNAME --volfile-id=$VOLNAME $MOUNTPOINT

Change-Id: Ia533788d309c78688a315dc8cd04d30fad9e9485
BUG: 1495430
Signed-off-by: Krutika Dhananjay &lt;kdhananj@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>afr: auto-resolve split-brains for zero-byte files</title>
<updated>2017-10-02T12:34:23+00:00</updated>
<author>
<name>Ravishankar N</name>
<email>ravishankar@redhat.com</email>
</author>
<published>2017-09-27T05:02:36+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=f5998f07dfd21d06a4119416ca79db50232b50d4'/>
<id>f5998f07dfd21d06a4119416ca79db50232b50d4</id>
<content type='text'>
Backport of https://review.gluster.org/#/c/18283/

Problems:
As described in BZ 1491670, renaming hardlinks can result in data/mdata
split-brain of the DHT link-to files (T files) without any mismatch of
data and metadata.

As described in BZ 1486063, for a zero-byte file with only dirty bits
set, arbiter brick will likely be chosen as the source brick.

Fix:
For zero byte files in split-brain, pick first brick as
a) data source if file size is zero on all bricks.
b) metadata source if metadata is the same on all bricks

In arbiter case, if file size is zero on all bricks and there are no
pending afr xattrs, pick 1st brick as data source.

Change-Id: I0270a9a2f97c3b21087e280bb890159b43975e04
BUG: 1496321
Signed-off-by: Ravishankar N &lt;ravishankar@redhat.com&gt;
Reported-by: Rahul Hinduja &lt;rhinduja@redhat.com&gt;
Reported-by: Mabi &lt;mabi@protonmail.ch&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Backport of https://review.gluster.org/#/c/18283/

Problems:
As described in BZ 1491670, renaming hardlinks can result in data/mdata
split-brain of the DHT link-to files (T files) without any mismatch of
data and metadata.

As described in BZ 1486063, for a zero-byte file with only dirty bits
set, arbiter brick will likely be chosen as the source brick.

Fix:
For zero byte files in split-brain, pick first brick as
a) data source if file size is zero on all bricks.
b) metadata source if metadata is the same on all bricks

In arbiter case, if file size is zero on all bricks and there are no
pending afr xattrs, pick 1st brick as data source.

Change-Id: I0270a9a2f97c3b21087e280bb890159b43975e04
BUG: 1496321
Signed-off-by: Ravishankar N &lt;ravishankar@redhat.com&gt;
Reported-by: Rahul Hinduja &lt;rhinduja@redhat.com&gt;
Reported-by: Mabi &lt;mabi@protonmail.ch&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>posix: add sanity checks for removing the gfid symlink for directories</title>
<updated>2017-09-23T12:19:56+00:00</updated>
<author>
<name>Ravishankar N</name>
<email>ravishankar@redhat.com</email>
</author>
<published>2017-09-15T07:34:09+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=4aa4bf3f14175c91d392032515b5c0f76359b3e9'/>
<id>4aa4bf3f14175c91d392032515b5c0f76359b3e9</id>
<content type='text'>
Backport of https://review.gluster.org/17945

...during mkdir and rmdir. Otherwise, during entry self-heal, the
directory could be left out without a .glusterfs symlink causing fops like
opendir, readdir to fail.  The only chance the missing symlink will be
created is when a fresh lookup comes on it.

Change-Id: I2e1cf1bce8962ea80187edd8f6d73e0a09cf9f8e
BUG: 1491966
Signed-off-by: Ravishankar N &lt;ravishankar@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Backport of https://review.gluster.org/17945

...during mkdir and rmdir. Otherwise, during entry self-heal, the
directory could be left out without a .glusterfs symlink causing fops like
opendir, readdir to fail.  The only chance the missing symlink will be
created is when a fresh lookup comes on it.

Change-Id: I2e1cf1bce8962ea80187edd8f6d73e0a09cf9f8e
BUG: 1491966
Signed-off-by: Ravishankar N &lt;ravishankar@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>features/shard: Return aggregated size in stbuf of LINK fop</title>
<updated>2017-09-17T12:48:22+00:00</updated>
<author>
<name>Krutika Dhananjay</name>
<email>kdhananj@redhat.com</email>
</author>
<published>2017-09-05T16:12:26+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=3fccf92b8af269324ef94e3d42e1746a01ec9d89'/>
<id>3fccf92b8af269324ef94e3d42e1746a01ec9d89</id>
<content type='text'>
        Backport of:
        &gt; Change-Id: I42df7679d63fec9b4c03b8dbc66c5625f097fac0
        &gt; Reviewed-on: https://review.gluster.org/18209
        &gt; BUG: 1488546
        &gt; cherry-picked from 91430817ce5bcbeabf057e9c978485728a85fb2b

Change-Id: I42df7679d63fec9b4c03b8dbc66c5625f097fac0
BUG: 1488719
Signed-off-by: Krutika Dhananjay &lt;kdhananj@redhat.com&gt;
Reviewed-on: https://review.gluster.org/18212
Smoke: Gluster Build System &lt;jenkins@build.gluster.org&gt;
Reviewed-by: Pranith Kumar Karampuri &lt;pkarampu@redhat.com&gt;
CentOS-regression: Gluster Build System &lt;jenkins@build.gluster.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
        Backport of:
        &gt; Change-Id: I42df7679d63fec9b4c03b8dbc66c5625f097fac0
        &gt; Reviewed-on: https://review.gluster.org/18209
        &gt; BUG: 1488546
        &gt; cherry-picked from 91430817ce5bcbeabf057e9c978485728a85fb2b

Change-Id: I42df7679d63fec9b4c03b8dbc66c5625f097fac0
BUG: 1488719
Signed-off-by: Krutika Dhananjay &lt;kdhananj@redhat.com&gt;
Reviewed-on: https://review.gluster.org/18212
Smoke: Gluster Build System &lt;jenkins@build.gluster.org&gt;
Reviewed-by: Pranith Kumar Karampuri &lt;pkarampu@redhat.com&gt;
CentOS-regression: Gluster Build System &lt;jenkins@build.gluster.org&gt;
</pre>
</div>
</content>
</entry>
</feed>
