<feed xmlns='http://www.w3.org/2005/Atom'>
<title>glusterfs.git/xlators/features/read-only/src, branch v3.13.2</title>
<subtitle></subtitle>
<link rel='alternate' type='text/html' href='http://dev.gluster.org/cgit/glusterfs.git/'/>
<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://dev.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>Xlators/features: Coverity Issue "NEGATIVE_RETURNS" in worm_truncate,worm_ftruncate,worm_link,worn_unlink and worm_rename.</title>
<updated>2017-10-31T07:56:24+00:00</updated>
<author>
<name>Subha sree Mohankumar</name>
<email>smohanku@redhat.com</email>
</author>
<published>2017-09-24T19:33:09+00:00</published>
<link rel='alternate' type='text/html' href='http://dev.gluster.org/cgit/glusterfs.git/commit/?id=1d92d5173b1c9e5cda60fe5c5a237fc4b82df030'/>
<id>1d92d5173b1c9e5cda60fe5c5a237fc4b82df030</id>
<content type='text'>
Issue :Event negative_returns: 	"op_errno" is passed to a parameter
that cannot be negative.

Fix : In functions worm_link,worm_unlink,worm_truncate,worm_ftruncate
and worm_rename, added an condition to check the whether value
of "op_errno" is negative or not.If the value is negative, then
it is set to EROFS.

Change-Id: Ie65601b6cc9799f587cc574408281dab50a58afb
BUG: 789278
Signed-off-by: Subha sree Mohankumar &lt;smohanku@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Issue :Event negative_returns: 	"op_errno" is passed to a parameter
that cannot be negative.

Fix : In functions worm_link,worm_unlink,worm_truncate,worm_ftruncate
and worm_rename, added an condition to check the whether value
of "op_errno" is negative or not.If the value is negative, then
it is set to EROFS.

Change-Id: Ie65601b6cc9799f587cc574408281dab50a58afb
BUG: 789278
Signed-off-by: Subha sree Mohankumar &lt;smohanku@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>write once read many: file appendable in worm state</title>
<updated>2017-10-30T16:00:46+00:00</updated>
<author>
<name>Vishal Pandey</name>
<email>vishpandey2014@gmail.com</email>
</author>
<published>2017-10-24T08:56:45+00:00</published>
<link rel='alternate' type='text/html' href='http://dev.gluster.org/cgit/glusterfs.git/commit/?id=4edea128916eb76ec94fde90407eb70af6493337'/>
<id>4edea128916eb76ec94fde90407eb70af6493337</id>
<content type='text'>
Issue:
A new file is appendable even when file level worm is 1.

Fix:
Do a state transition in writev function in worm.c file.

Steps To Test:
1- Activate file level worm.
2- Create a new file.
3- Leave file dormant for auto commit period.
4- Try and append some content to the file.
5- check the file if new content has been appended or not.
6- check if file has been transitioned to Worm Retention state.

Change-Id: I52d50ad888cb0c39ad54be9352ccb07d48b8d71a
BUG: 1505807
Signed-off-by: Vishal Pandey &lt;vishpandey2014@gmail.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Issue:
A new file is appendable even when file level worm is 1.

Fix:
Do a state transition in writev function in worm.c file.

Steps To Test:
1- Activate file level worm.
2- Create a new file.
3- Leave file dormant for auto commit period.
4- Try and append some content to the file.
5- check the file if new content has been appended or not.
6- check if file has been transitioned to Worm Retention state.

Change-Id: I52d50ad888cb0c39ad54be9352ccb07d48b8d71a
BUG: 1505807
Signed-off-by: Vishal Pandey &lt;vishpandey2014@gmail.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>worm/read-only: Add sentinel NULL key to options</title>
<updated>2017-10-17T05:56:10+00:00</updated>
<author>
<name>Prashanth Pai</name>
<email>ppai@redhat.com</email>
</author>
<published>2017-10-17T05:27:13+00:00</published>
<link rel='alternate' type='text/html' href='http://dev.gluster.org/cgit/glusterfs.git/commit/?id=4f3c680ed8350496e18de127064be816388dafdd'/>
<id>4f3c680ed8350496e18de127064be816388dafdd</id>
<content type='text'>
BUG: 1193929
Change-Id: Ibfee382362826556e2e760f9b946c83445d6a08e
Signed-off-by: Prashanth Pai &lt;ppai@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
BUG: 1193929
Change-Id: Ibfee382362826556e2e760f9b946c83445d6a08e
Signed-off-by: Prashanth Pai &lt;ppai@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>features/worm: Adding check to newloc when doing rename</title>
<updated>2017-09-18T07:14:59+00:00</updated>
<author>
<name>luneo7</name>
<email>luneo7@gmail.com</email>
</author>
<published>2017-08-23T18:25:57+00:00</published>
<link rel='alternate' type='text/html' href='http://dev.gluster.org/cgit/glusterfs.git/commit/?id=00a4dc058a0573d18e9c1bd3692fecee151a9285'/>
<id>00a4dc058a0573d18e9c1bd3692fecee151a9285</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.

Change-Id: I63c6bbabb7bb456ebedf201cc77b878ffda62229
BUG: 1484490
Signed-off-by: luneo7 &lt;luneo7@gmail.com&gt;
Reviewed-on: https://review.gluster.org/18104
Tested-by: jiffin tony Thottan &lt;jthottan@redhat.com&gt;
Tested-by: Prashanth Pai &lt;ppai@redhat.com&gt;
Smoke: Gluster Build System &lt;jenkins@build.gluster.org&gt;
CentOS-regression: Gluster Build System &lt;jenkins@build.gluster.org&gt;
Reviewed-by: Prashanth Pai &lt;ppai@redhat.com&gt;
Reviewed-by: Karthik U S &lt;ksubrahm@redhat.com&gt;
Reviewed-by: Amar Tumballi &lt;amarts@redhat.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.

Change-Id: I63c6bbabb7bb456ebedf201cc77b878ffda62229
BUG: 1484490
Signed-off-by: luneo7 &lt;luneo7@gmail.com&gt;
Reviewed-on: https://review.gluster.org/18104
Tested-by: jiffin tony Thottan &lt;jthottan@redhat.com&gt;
Tested-by: Prashanth Pai &lt;ppai@redhat.com&gt;
Smoke: Gluster Build System &lt;jenkins@build.gluster.org&gt;
CentOS-regression: Gluster Build System &lt;jenkins@build.gluster.org&gt;
Reviewed-by: Prashanth Pai &lt;ppai@redhat.com&gt;
Reviewed-by: Karthik U S &lt;ksubrahm@redhat.com&gt;
Reviewed-by: Amar Tumballi &lt;amarts@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>read-only : currently read-only doesn't implement fallocate</title>
<updated>2017-08-07T13:15:37+00:00</updated>
<author>
<name>SonaArora</name>
<email>aarorasona@gmail.com</email>
</author>
<published>2017-07-26T12:13:45+00:00</published>
<link rel='alternate' type='text/html' href='http://dev.gluster.org/cgit/glusterfs.git/commit/?id=ebc8237d8c445af208446c937f31aa311d1efb2c'/>
<id>ebc8237d8c445af208446c937f31aa311d1efb2c</id>
<content type='text'>
PROBLEM STATEMENT: read-only should block fallocate call if its enabled,
else pass to next xlator. Implemented this functionality in read-only.

BUG: 1475300
Change-Id: I57c51eb4f1519ba75d7291eba49554e6ed4a25eb
Signed-off-by: SonaArora &lt;aarorasona@gmail.com&gt;
Reviewed-on: https://review.gluster.org/17879
Smoke: Gluster Build System &lt;jenkins@build.gluster.org&gt;
Tested-by: Karthik U S &lt;ksubrahm@redhat.com&gt;
CentOS-regression: Gluster Build System &lt;jenkins@build.gluster.org&gt;
Reviewed-by: Karthik U S &lt;ksubrahm@redhat.com&gt;
Reviewed-by: Ashish Pandey &lt;aspandey@redhat.com&gt;
Reviewed-by: Kotresh HR &lt;khiremat@redhat.com&gt;
Reviewed-by: Amar Tumballi &lt;amarts@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
PROBLEM STATEMENT: read-only should block fallocate call if its enabled,
else pass to next xlator. Implemented this functionality in read-only.

BUG: 1475300
Change-Id: I57c51eb4f1519ba75d7291eba49554e6ed4a25eb
Signed-off-by: SonaArora &lt;aarorasona@gmail.com&gt;
Reviewed-on: https://review.gluster.org/17879
Smoke: Gluster Build System &lt;jenkins@build.gluster.org&gt;
Tested-by: Karthik U S &lt;ksubrahm@redhat.com&gt;
CentOS-regression: Gluster Build System &lt;jenkins@build.gluster.org&gt;
Reviewed-by: Karthik U S &lt;ksubrahm@redhat.com&gt;
Reviewed-by: Ashish Pandey &lt;aspandey@redhat.com&gt;
Reviewed-by: Kotresh HR &lt;khiremat@redhat.com&gt;
Reviewed-by: Amar Tumballi &lt;amarts@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>features/read-only: Allow internal clients to r/w</title>
<updated>2017-07-11T15:01:51+00:00</updated>
<author>
<name>Kotresh HR</name>
<email>khiremat@redhat.com</email>
</author>
<published>2017-03-06T15:19:54+00:00</published>
<link rel='alternate' type='text/html' href='http://dev.gluster.org/cgit/glusterfs.git/commit/?id=9ab249130a5dd442044e787f1e171e7a17839906'/>
<id>9ab249130a5dd442044e787f1e171e7a17839906</id>
<content type='text'>
If the "read-only" volume option is set, it would
make the volume "read-only". But it also makes it
read-only to gluster internal clients such as
gsyncd, self heal, bitd, rebalance etc. In which
case, all the internal operations would fail. This
patch allows internal clients to read and write
when "read-only" option is set.

Change-Id: I8110e8d9eac8def403bb29f235000ddc79eaa433
BUG: 1430608
Signed-off-by: Kotresh HR &lt;khiremat@redhat.com&gt;
Reviewed-on: https://review.gluster.org/16855
NetBSD-regression: NetBSD Build System &lt;jenkins@build.gluster.org&gt;
CentOS-regression: Gluster Build System &lt;jenkins@build.gluster.org&gt;
Smoke: Gluster Build System &lt;jenkins@build.gluster.org&gt;
Reviewed-by: Karthik U S &lt;ksubrahm@redhat.com&gt;
Reviewed-by: Amar Tumballi &lt;amarts@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
If the "read-only" volume option is set, it would
make the volume "read-only". But it also makes it
read-only to gluster internal clients such as
gsyncd, self heal, bitd, rebalance etc. In which
case, all the internal operations would fail. This
patch allows internal clients to read and write
when "read-only" option is set.

Change-Id: I8110e8d9eac8def403bb29f235000ddc79eaa433
BUG: 1430608
Signed-off-by: Kotresh HR &lt;khiremat@redhat.com&gt;
Reviewed-on: https://review.gluster.org/16855
NetBSD-regression: NetBSD Build System &lt;jenkins@build.gluster.org&gt;
CentOS-regression: Gluster Build System &lt;jenkins@build.gluster.org&gt;
Smoke: Gluster Build System &lt;jenkins@build.gluster.org&gt;
Reviewed-by: Karthik U S &lt;ksubrahm@redhat.com&gt;
Reviewed-by: Amar Tumballi &lt;amarts@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>worm: add check for internal processes in ftruncate()</title>
<updated>2017-04-18T18:35:12+00:00</updated>
<author>
<name>Amar Tumballi</name>
<email>amarts@redhat.com</email>
</author>
<published>2017-04-13T06:08:08+00:00</published>
<link rel='alternate' type='text/html' href='http://dev.gluster.org/cgit/glusterfs.git/commit/?id=c1e61fd5dfd118830e896a45d398a2041006d74e'/>
<id>c1e61fd5dfd118830e896a45d398a2041006d74e</id>
<content type='text'>
The patch fixes the recently seen issues with worm_sh.t test.

RCA:

-
$ git log --oneline xlators/features/read-only/src/worm.c
1b01bdc worm: allow Self-heal-Daemon to perform some operations
c5a4a77 features/worm: Adding implementation for ftruncate
-

These two patches were merged in reverse order of their submission,
and hence the check added for internal processes got missed in
new fop 'ftruncate()'. The worm_sh.t passed the tests as while
that patch got submitted there was no ftruncate() in worm xlator.

Change-Id: I81a8a45fa2679917a2c859c4f5224a2c3edbc784
BUG: 1423413
Signed-off-by: Amar Tumballi &lt;amarts@redhat.com&gt;
Reviewed-on: https://review.gluster.org/17048
NetBSD-regression: NetBSD Build System &lt;jenkins@build.gluster.org&gt;
CentOS-regression: Gluster Build System &lt;jenkins@build.gluster.org&gt;
Smoke: Gluster Build System &lt;jenkins@build.gluster.org&gt;
Reviewed-by: Zhou Zhengping &lt;johnzzpcrystal@gmail.com&gt;
Reviewed-by: David Spisla &lt;david.spisla@iternity.com&gt;
Reviewed-by: Vijay Bellur &lt;vbellur@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The patch fixes the recently seen issues with worm_sh.t test.

RCA:

-
$ git log --oneline xlators/features/read-only/src/worm.c
1b01bdc worm: allow Self-heal-Daemon to perform some operations
c5a4a77 features/worm: Adding implementation for ftruncate
-

These two patches were merged in reverse order of their submission,
and hence the check added for internal processes got missed in
new fop 'ftruncate()'. The worm_sh.t passed the tests as while
that patch got submitted there was no ftruncate() in worm xlator.

Change-Id: I81a8a45fa2679917a2c859c4f5224a2c3edbc784
BUG: 1423413
Signed-off-by: Amar Tumballi &lt;amarts@redhat.com&gt;
Reviewed-on: https://review.gluster.org/17048
NetBSD-regression: NetBSD Build System &lt;jenkins@build.gluster.org&gt;
CentOS-regression: Gluster Build System &lt;jenkins@build.gluster.org&gt;
Smoke: Gluster Build System &lt;jenkins@build.gluster.org&gt;
Reviewed-by: Zhou Zhengping &lt;johnzzpcrystal@gmail.com&gt;
Reviewed-by: David Spisla &lt;david.spisla@iternity.com&gt;
Reviewed-by: Vijay Bellur &lt;vbellur@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>worm: allow Self-heal-Daemon to perform some operations</title>
<updated>2017-04-12T11:27:09+00:00</updated>
<author>
<name>David Spisla</name>
<email>david.spisla@iternity.com</email>
</author>
<published>2017-02-17T12:06:44+00:00</published>
<link rel='alternate' type='text/html' href='http://dev.gluster.org/cgit/glusterfs.git/commit/?id=1b01bdcc8effb9b5342edbe669b9e2b2c36bfc80'/>
<id>1b01bdcc8effb9b5342edbe669b9e2b2c36bfc80</id>
<content type='text'>
The Self-Heal-Daemon should be allowed to trigger unlink, link,
trauncate, rename and write operation. The value of frame-&gt;root-&gt;pid
can be used to detect internal (by SHD) operations.

Change-Id: I7526148100bef1e2837d69df5c119dc97d91fffd
BUG: 1423413
Signed-off-by: David Spisla &lt;david.spisla@iternity.com&gt;
Reviewed-on: https://review.gluster.org/16661
Tested-by: jiffin tony Thottan &lt;jthottan@redhat.com&gt;
NetBSD-regression: NetBSD Build System &lt;jenkins@build.gluster.org&gt;
CentOS-regression: Gluster Build System &lt;jenkins@build.gluster.org&gt;
Reviewed-by: Niels de Vos &lt;ndevos@redhat.com&gt;
Smoke: Gluster Build System &lt;jenkins@build.gluster.org&gt;
Reviewed-by: jiffin tony Thottan &lt;jthottan@redhat.com&gt;
Reviewed-by: Amar Tumballi &lt;amarts@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The Self-Heal-Daemon should be allowed to trigger unlink, link,
trauncate, rename and write operation. The value of frame-&gt;root-&gt;pid
can be used to detect internal (by SHD) operations.

Change-Id: I7526148100bef1e2837d69df5c119dc97d91fffd
BUG: 1423413
Signed-off-by: David Spisla &lt;david.spisla@iternity.com&gt;
Reviewed-on: https://review.gluster.org/16661
Tested-by: jiffin tony Thottan &lt;jthottan@redhat.com&gt;
NetBSD-regression: NetBSD Build System &lt;jenkins@build.gluster.org&gt;
CentOS-regression: Gluster Build System &lt;jenkins@build.gluster.org&gt;
Reviewed-by: Niels de Vos &lt;ndevos@redhat.com&gt;
Smoke: Gluster Build System &lt;jenkins@build.gluster.org&gt;
Reviewed-by: jiffin tony Thottan &lt;jthottan@redhat.com&gt;
Reviewed-by: Amar Tumballi &lt;amarts@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>features/worm: Adding implementation for ftruncate</title>
<updated>2017-04-05T08:11:51+00:00</updated>
<author>
<name>karthik-us</name>
<email>ksubrahm@redhat.com</email>
</author>
<published>2017-04-04T13:27:32+00:00</published>
<link rel='alternate' type='text/html' href='http://dev.gluster.org/cgit/glusterfs.git/commit/?id=c5a4a77848024d2adf8cd4f35d550ba90c174fc7'/>
<id>c5a4a77848024d2adf8cd4f35d550ba90c174fc7</id>
<content type='text'>
Problem:
Since the ftruncate fop was not handled in the worm feature, when
truncate and write was happening on a worm-retained/worm file, it was
giving the EROFS error but truncating the file, which is not correct.

Change-Id: I1a7e904655210d78bce9e01652ac56f3783b5aed
BUG: 1438810
Signed-off-by: karthik-us &lt;ksubrahm@redhat.com&gt;
Reviewed-on: https://review.gluster.org/16995
NetBSD-regression: NetBSD Build System &lt;jenkins@build.gluster.org&gt;
Reviewed-by: Niels de Vos &lt;ndevos@redhat.com&gt;
CentOS-regression: Gluster Build System &lt;jenkins@build.gluster.org&gt;
Reviewed-by: Ravishankar N &lt;ravishankar@redhat.com&gt;
Smoke: Gluster Build System &lt;jenkins@build.gluster.org&gt;
Reviewed-by: Amar Tumballi &lt;amarts@redhat.com&gt;
Reviewed-by: Raghavendra Talur &lt;rtalur@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Problem:
Since the ftruncate fop was not handled in the worm feature, when
truncate and write was happening on a worm-retained/worm file, it was
giving the EROFS error but truncating the file, which is not correct.

Change-Id: I1a7e904655210d78bce9e01652ac56f3783b5aed
BUG: 1438810
Signed-off-by: karthik-us &lt;ksubrahm@redhat.com&gt;
Reviewed-on: https://review.gluster.org/16995
NetBSD-regression: NetBSD Build System &lt;jenkins@build.gluster.org&gt;
Reviewed-by: Niels de Vos &lt;ndevos@redhat.com&gt;
CentOS-regression: Gluster Build System &lt;jenkins@build.gluster.org&gt;
Reviewed-by: Ravishankar N &lt;ravishankar@redhat.com&gt;
Smoke: Gluster Build System &lt;jenkins@build.gluster.org&gt;
Reviewed-by: Amar Tumballi &lt;amarts@redhat.com&gt;
Reviewed-by: Raghavendra Talur &lt;rtalur@redhat.com&gt;
</pre>
</div>
</content>
</entry>
</feed>
