<feed xmlns='http://www.w3.org/2005/Atom'>
<title>glusterfs.git/xlators, branch v3.13.0</title>
<subtitle></subtitle>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/'/>
<entry>
<title>posix: Change GD_OP_VERSION to 3_13_0 from 3_12_0 for storage.reserve</title>
<updated>2017-12-01T16:13:16+00:00</updated>
<author>
<name>Mohit Agrawal</name>
<email>moagrawa@redhat.com</email>
</author>
<published>2017-11-30T06:21:32+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=3a591d1207e4bdc86e39d805dba0e8d7a85d7e75'/>
<id>3a591d1207e4bdc86e39d805dba0e8d7a85d7e75</id>
<content type='text'>
Problem: Change GD_OP_VERSION to 3_13_0 from 3_12_0 for option storage.reserve

Solution: Actually feature was merged in 3.13.0 branch so GD_OP_VERSION needs
         to change from 3_12_0 to 3_13_0

BUG: 1518512
Change-Id: I6f753978fd607919efcc60f73c37feaadc4f32ef
Signed-off-by: Mohit Agrawal &lt;moagrawa@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Problem: Change GD_OP_VERSION to 3_13_0 from 3_12_0 for option storage.reserve

Solution: Actually feature was merged in 3.13.0 branch so GD_OP_VERSION needs
         to change from 3_12_0 to 3_13_0

BUG: 1518512
Change-Id: I6f753978fd607919efcc60f73c37feaadc4f32ef
Signed-off-by: Mohit Agrawal &lt;moagrawa@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Disable gfid2path by default on NetBSD</title>
<updated>2017-11-30T14:26:39+00:00</updated>
<author>
<name>Emmanuel Dreyfus</name>
<email>manu@netbsd.org</email>
</author>
<published>2017-11-15T03:08:18+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=bb201627fb70fc80901245c13748d0c101cb62aa'/>
<id>bb201627fb70fc80901245c13748d0c101cb62aa</id>
<content type='text'>
NetBSD storage of extended attributes for UFS1 badly scales when
the list of extended attributes names rises. gfid2path can add as
many extended attributes names as we have files, hence we keep it
disabled for performance sake.

&gt; Change-Id: Id77b5f5ceb4d5eba1b3362b4b9fc693450ffbc2b
&gt; Signed-off-by: Emmanuel Dreyfus &lt;manu@netbsd.org&gt;
&gt; BUG: 1129939

Change-Id: I17c12251d80dbb41b7d4864d5739d1ad3d6877a0
Signed-off-by: Emmanuel Dreyfus &lt;manu@netbsd.org&gt;
BUG: 1513259
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
NetBSD storage of extended attributes for UFS1 badly scales when
the list of extended attributes names rises. gfid2path can add as
many extended attributes names as we have files, hence we keep it
disabled for performance sake.

&gt; Change-Id: Id77b5f5ceb4d5eba1b3362b4b9fc693450ffbc2b
&gt; Signed-off-by: Emmanuel Dreyfus &lt;manu@netbsd.org&gt;
&gt; BUG: 1129939

Change-Id: I17c12251d80dbb41b7d4864d5739d1ad3d6877a0
Signed-off-by: Emmanuel Dreyfus &lt;manu@netbsd.org&gt;
BUG: 1513259
</pre>
</div>
</content>
</entry>
<entry>
<title>cluster/ec: EC DISCARD doesn't punch hole properly</title>
<updated>2017-11-29T14:43:10+00:00</updated>
<author>
<name>Sunil Kumar Acharya</name>
<email>sheggodu@redhat.com</email>
</author>
<published>2017-11-22T09:42:26+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=098a5ec1a30f69ec1bbea89f14b4a7a9212d5e20'/>
<id>098a5ec1a30f69ec1bbea89f14b4a7a9212d5e20</id>
<content type='text'>
Problem:
DISCARD operation on EC volume was punching hole of lesser
size than the specified size in some cases.

Solution:
EC was not handling punch hole for tail part in some cases.
Updated the code to handle it appropriately.

&gt;BUG: 1516206
&gt;Change-Id: If3e69e417c3e5034afee04e78f5f78855e65f932
&gt;Signed-off-by: Sunil Kumar Acharya &lt;sheggodu@redhat.com&gt;

BUG: 1518257
Change-Id: If3e69e417c3e5034afee04e78f5f78855e65f932
Signed-off-by: Sunil Kumar Acharya &lt;sheggodu@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Problem:
DISCARD operation on EC volume was punching hole of lesser
size than the specified size in some cases.

Solution:
EC was not handling punch hole for tail part in some cases.
Updated the code to handle it appropriately.

&gt;BUG: 1516206
&gt;Change-Id: If3e69e417c3e5034afee04e78f5f78855e65f932
&gt;Signed-off-by: Sunil Kumar Acharya &lt;sheggodu@redhat.com&gt;

BUG: 1518257
Change-Id: If3e69e417c3e5034afee04e78f5f78855e65f932
Signed-off-by: Sunil Kumar Acharya &lt;sheggodu@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>features/locks: Fix memory leaks</title>
<updated>2017-11-28T14:56:26+00:00</updated>
<author>
<name>Xavier Hernandez</name>
<email>jahernan@redhat.com</email>
</author>
<published>2017-11-20T09:51:09+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=4e33ea6e469f8812813f5616dee2e9628e2fc474'/>
<id>4e33ea6e469f8812813f5616dee2e9628e2fc474</id>
<content type='text'>
Backport of:
&gt; BUG: 1515161

Change-Id: Ic1d2e17a7d14389b6734d1b88bd28c0a2907bbd6
BUG: 1517692
Signed-off-by: Xavier Hernandez &lt;jahernan@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Backport of:
&gt; BUG: 1515161

Change-Id: Ic1d2e17a7d14389b6734d1b88bd28c0a2907bbd6
BUG: 1517692
Signed-off-by: Xavier Hernandez &lt;jahernan@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>cluster/afr: Fix for arbiter becoming source</title>
<updated>2017-11-27T18:13:32+00:00</updated>
<author>
<name>karthik-us</name>
<email>ksubrahm@redhat.com</email>
</author>
<published>2017-08-16T11:56:48+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=2475bfb4d25b20c20bc806771857a2de443835a2'/>
<id>2475bfb4d25b20c20bc806771857a2de443835a2</id>
<content type='text'>
Problem:
When eager-lock is on, and two writes happen in parallel on a FD
we were observing the following behaviour:
- First write fails on one data brick
- Since the post-op is not yet happened, the inode refresh will get
  both the data bricks as readable and set it in the inode context
- In flight split brain check see both the data bricks as readable
  and allows the second write
- Second write fails on the other data brick
- Now the post-op happens and marks both the data bricks as bad and
  arbiter will become source for healing

Fix:
Adding one more variable called write_suvol in inode context and it
will have the in memory representation of the writable subvols. Inode
refresh will not update this value and its lifetime is pre-op through
unlock in the afr transaction. Initially the pre-op will set this
value same as read_subvol in inode context and then in the in flight
split brain check we will use this value instead of read_subvol.
After all the checks we will update the value of this and set the
read_subvol same as this to avoid having incorrect value in that.

Change-Id: I2ef6904524ab91af861d59690974bbc529ab1af3
BUG: 1516313
Signed-off-by: karthik-us &lt;ksubrahm@redhat.com&gt;
(cherry picked from commit 19f9bcff4aada589d4321356c2670ed283f02c03)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Problem:
When eager-lock is on, and two writes happen in parallel on a FD
we were observing the following behaviour:
- First write fails on one data brick
- Since the post-op is not yet happened, the inode refresh will get
  both the data bricks as readable and set it in the inode context
- In flight split brain check see both the data bricks as readable
  and allows the second write
- Second write fails on the other data brick
- Now the post-op happens and marks both the data bricks as bad and
  arbiter will become source for healing

Fix:
Adding one more variable called write_suvol in inode context and it
will have the in memory representation of the writable subvols. Inode
refresh will not update this value and its lifetime is pre-op through
unlock in the afr transaction. Initially the pre-op will set this
value same as read_subvol in inode context and then in the in flight
split brain check we will use this value instead of read_subvol.
After all the checks we will update the value of this and set the
read_subvol same as this to avoid having incorrect value in that.

Change-Id: I2ef6904524ab91af861d59690974bbc529ab1af3
BUG: 1516313
Signed-off-by: karthik-us &lt;ksubrahm@redhat.com&gt;
(cherry picked from commit 19f9bcff4aada589d4321356c2670ed283f02c03)
</pre>
</div>
</content>
</entry>
<entry>
<title>features/worm: new config option to manage deletion of Worm files.</title>
<updated>2017-11-22T13:48:16+00:00</updated>
<author>
<name>Vishal Pandey</name>
<email>vishpandey2014@gmail.com</email>
</author>
<published>2017-11-02T13:46:26+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=c1b3c5712a2567990b59d12ff6b334118e26286e'/>
<id>c1b3c5712a2567990b59d12ff6b334118e26286e</id>
<content type='text'>
Add a new configuration option worm-files-deletable to
 file-level Worm in order to control behaviour of Worm files upon deletion.

Steps to Test:
1. Add all the configuration options to a volume to activate file-level-worm
2. Option features.worm-files-deletable is set to 1 by default.
3. Create a new file and wait for the retention time to expire.
4. After retention time expires, do an truncate, rename, unlink, link
   or write to send the file in Worm state.
5. After that do `rm -f filename`.
6. The file is successfully removed.
7. Repeat from step 2 by setting features.worm-files-deletable 0.
   This time deletion should not be successful.

Change-Id: Ibc89861ee296e065330b93a9f9606be5da40af31
BUG: 1508898
Signed-off-by: Vishal Pandey &lt;vishpandey2014@gmail.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Add a new configuration option worm-files-deletable to
 file-level Worm in order to control behaviour of Worm files upon deletion.

Steps to Test:
1. Add all the configuration options to a volume to activate file-level-worm
2. Option features.worm-files-deletable is set to 1 by default.
3. Create a new file and wait for the retention time to expire.
4. After retention time expires, do an truncate, rename, unlink, link
   or write to send the file in Worm state.
5. After that do `rm -f filename`.
6. The file is successfully removed.
7. Repeat from step 2 by setting features.worm-files-deletable 0.
   This time deletion should not be successful.

Change-Id: Ibc89861ee296e065330b93a9f9606be5da40af31
BUG: 1508898
Signed-off-by: Vishal Pandey &lt;vishpandey2014@gmail.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>afr: add checks for allowing lookups</title>
<updated>2017-11-21T18:00:33+00:00</updated>
<author>
<name>Ravishankar N</name>
<email>ravishankar@redhat.com</email>
</author>
<published>2017-08-16T12:31:17+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=fa13ff2f94e16532014f5a6744f494478870e47a'/>
<id>fa13ff2f94e16532014f5a6744f494478870e47a</id>
<content type='text'>
Problem:
In an arbiter volume, lookup was being served from one of the sink
bricks (source brick was down). shard uses the iatt values from lookup cbk
to calculate the size and block count, which in this case were incorrect
values. shard_local_t-&gt;last_block was thus initialised to -1, resulting
in an infinite while loop in shard_common_resolve_shards().

Fix:
Use client quorum logic to allow or fail the lookups from afr if there
are no readable subvolumes. So in replica-3 or arbiter vols, if there is
no good copy or if quorum is not met, fail lookup with ENOTCONN.

With this fix, we are also removing support for quorum-reads xlator
option. So if quorum is not met, neither read nor write txns are allowed
and we fail the fop with ENOTCONN.

Change-Id: Ic65c00c24f77ece007328b421494eee62a505fa0
BUG: 1515572
Signed-off-by: Ravishankar N &lt;ravishankar@redhat.com&gt;
(cherry picked from commit bd44d59741bb8c0f5d7a62c5b1094179dd0ce8a4)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Problem:
In an arbiter volume, lookup was being served from one of the sink
bricks (source brick was down). shard uses the iatt values from lookup cbk
to calculate the size and block count, which in this case were incorrect
values. shard_local_t-&gt;last_block was thus initialised to -1, resulting
in an infinite while loop in shard_common_resolve_shards().

Fix:
Use client quorum logic to allow or fail the lookups from afr if there
are no readable subvolumes. So in replica-3 or arbiter vols, if there is
no good copy or if quorum is not met, fail lookup with ENOTCONN.

With this fix, we are also removing support for quorum-reads xlator
option. So if quorum is not met, neither read nor write txns are allowed
and we fail the fop with ENOTCONN.

Change-Id: Ic65c00c24f77ece007328b421494eee62a505fa0
BUG: 1515572
Signed-off-by: Ravishankar N &lt;ravishankar@redhat.com&gt;
(cherry picked from commit bd44d59741bb8c0f5d7a62c5b1094179dd0ce8a4)
</pre>
</div>
</content>
</entry>
<entry>
<title>cluster/dht: Don't set ACLs on linkto file</title>
<updated>2017-11-21T15:33:20+00:00</updated>
<author>
<name>N Balachandran</name>
<email>nbalacha@redhat.com</email>
</author>
<published>2017-11-20T03:48:09+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=f9bfda413437bdf32b48f5c2cef1887b1949bb84'/>
<id>f9bfda413437bdf32b48f5c2cef1887b1949bb84</id>
<content type='text'>
The trusted.SGI_ACL_FILE appears to set posix
ACLs on the linkto file that is a target of
file migration. This can mess up file permissions
and cause linkto identification to fail.
Now we remove all ACL xattrs from the results of
the listxattr call on the source before setting them
on the target.

&gt; BUG: 1514329
&gt; Signed-off-by: N Balachandran &lt;nbalacha@redhat.com&gt;
Change-Id: I56802dbaed783a16e3fb90f59f4ce849f8a4a9b4
BUG: 1515045
Signed-off-by: N Balachandran &lt;nbalacha@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The trusted.SGI_ACL_FILE appears to set posix
ACLs on the linkto file that is a target of
file migration. This can mess up file permissions
and cause linkto identification to fail.
Now we remove all ACL xattrs from the results of
the listxattr call on the source before setting them
on the target.

&gt; BUG: 1514329
&gt; Signed-off-by: N Balachandran &lt;nbalacha@redhat.com&gt;
Change-Id: I56802dbaed783a16e3fb90f59f4ce849f8a4a9b4
BUG: 1515045
Signed-off-by: N Balachandran &lt;nbalacha@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>cluster/ec: Fix op-version for disperse.other-eager-lock</title>
<updated>2017-11-16T14:48:45+00:00</updated>
<author>
<name>Xavier Hernandez</name>
<email>jahernan@redhat.com</email>
</author>
<published>2017-11-14T09:53:47+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=271b7de727ea77bf06402562f449d6df969a3f99'/>
<id>271b7de727ea77bf06402562f449d6df969a3f99</id>
<content type='text'>
The op-version used for the new option was wrong. It has been set
to 3.13.0.

&gt;Change-Id: I88fbd7834e4a8018c8906303e734c251e90be8cf
&gt;BUG: 1502610
&gt;Signed-off-by: Xavier Hernandez &lt;jahernan@redhat.com&gt;

Change-Id: I88fbd7834e4a8018c8906303e734c251e90be8cf
BUG: 1512460
Signed-off-by: Xavier Hernandez &lt;jahernan@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The op-version used for the new option was wrong. It has been set
to 3.13.0.

&gt;Change-Id: I88fbd7834e4a8018c8906303e734c251e90be8cf
&gt;BUG: 1502610
&gt;Signed-off-by: Xavier Hernandez &lt;jahernan@redhat.com&gt;

Change-Id: I88fbd7834e4a8018c8906303e734c251e90be8cf
BUG: 1512460
Signed-off-by: Xavier Hernandez &lt;jahernan@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>cluster/ec: create eager-lock option for non-regular files</title>
<updated>2017-11-16T14:48:45+00:00</updated>
<author>
<name>Xavier Hernandez</name>
<email>jahernan@redhat.com</email>
</author>
<published>2017-10-16T11:57:59+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=b4684468c19e0fb447ba3762750044452a452a32'/>
<id>b4684468c19e0fb447ba3762750044452a452a32</id>
<content type='text'>
A new option is added to allow independent configuration of eager
locking for regular files and non-regular files.

&gt;Change-Id: I8f80e46d36d8551011132b15c0fac549b7fb1c60
&gt;BUG: 1502610
&gt;Signed-off-by: Xavier Hernandez &lt;jahernan@redhat.com&gt;

Change-Id: I8f80e46d36d8551011132b15c0fac549b7fb1c60
BUG: 1512460
Signed-off-by: Ashish Pandey &lt;aspandey@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
A new option is added to allow independent configuration of eager
locking for regular files and non-regular files.

&gt;Change-Id: I8f80e46d36d8551011132b15c0fac549b7fb1c60
&gt;BUG: 1502610
&gt;Signed-off-by: Xavier Hernandez &lt;jahernan@redhat.com&gt;

Change-Id: I8f80e46d36d8551011132b15c0fac549b7fb1c60
BUG: 1512460
Signed-off-by: Ashish Pandey &lt;aspandey@redhat.com&gt;
</pre>
</div>
</content>
</entry>
</feed>
