<feed xmlns='http://www.w3.org/2005/Atom'>
<title>glusterfs.git/xlators/features/marker/utils, branch v3.2.7qa2</title>
<subtitle></subtitle>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/'/>
<entry>
<title>geo-rep: gsyncd: fix up fallback xtime for orphans on master side</title>
<updated>2012-04-12T17:17:54+00:00</updated>
<author>
<name>Csaba Henk</name>
<email>csaba@gluster.com</email>
</author>
<published>2012-01-05T01:01:00+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=deea482deff52251f9fe39bc3bda09f58397cb06'/>
<id>deea482deff52251f9fe39bc3bda09f58397cb06</id>
<content type='text'>
Change-Id: I2fa543b4bd317e06ea621ae968300ffb7223a68a
BUG: 771787
Signed-off-by: Csaba Henk &lt;csaba@gluster.com&gt;
Reviewed-on: http://review.gluster.com/2580
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Kaushik BV &lt;kaushikbv@gluster.com&gt;
Reviewed-by: Vijay Bellur &lt;vijay@gluster.com&gt;
Reviewed-on: http://review.gluster.com/3103
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Change-Id: I2fa543b4bd317e06ea621ae968300ffb7223a68a
BUG: 771787
Signed-off-by: Csaba Henk &lt;csaba@gluster.com&gt;
Reviewed-on: http://review.gluster.com/2580
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Kaushik BV &lt;kaushikbv@gluster.com&gt;
Reviewed-by: Vijay Bellur &lt;vijay@gluster.com&gt;
Reviewed-on: http://review.gluster.com/3103
</pre>
</div>
</content>
</entry>
<entry>
<title>geo-rep / gsyncd: fix cleanup of temporary mounts</title>
<updated>2012-03-09T14:14:22+00:00</updated>
<author>
<name>Csaba Henk</name>
<email>csaba@redhat.com</email>
</author>
<published>2012-03-09T08:11:23+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=fafd5c17c0d126e10b401199cd4f01f7786deef8'/>
<id>fafd5c17c0d126e10b401199cd4f01f7786deef8</id>
<content type='text'>
The "finally" clause that was meant to cleanup after the
temp mount has not covered the case of getting signalled
(eg. by monitor, upon worker timing out).

So here we "outsource" the cleanup to an ephemeral child process.
Child calls setsid(2) so it won't be bothered by internal process
management. We use a pipe in between worker and the cleanup child;
when child sees the worker end getting closed, it performs the cleanup.
Worker end can get closed either because worker closes it (normal case),
or because worker has terminated (faulty case) -- thus as bonus, we get
a nice uniform handling with no need to differentiate between normal and
faulty cases.

The faulty case that was seen IRL -- ie., users of maintainance mounts
hang in chdir(2) to mount point -- can be simulated for testing purposes
by applying the following patch:

diff --git a/xlators/mount/fuse/src/fuse-bridge.c b/xlators/mount/fuse/src/fuse-bridge.c
index acd3c68..1ce5dc1 100644
--- a/xlators/mount/fuse/src/fuse-bridge.c
+++ b/xlators/mount/fuse/src/fuse-bridge.c
@@ -2918,7 +2918,7 @@ fuse_init (xlator_t *this, fuse_in_header_t *finh, void *msg)
         if (fini-&gt;minor &lt; 9)
                 *priv-&gt;msg0_len_p = sizeof(*finh) + FUSE_COMPAT_WRITE_IN_SIZE;
 #endif
-        ret = send_fuse_obj (this, finh, &amp;fino);
+        ret = priv-&gt;client_pid_set ? 0 : send_fuse_obj (this, finh, &amp;fino);
         if (ret == 0)
                 gf_log ("glusterfs-fuse", GF_LOG_INFO,
                         "FUSE inited with protocol versions:"

Change-Id: I1172bf16ac1006bad48958655572155820e5138d
BUG: 786291
Signed-off-by: Csaba Henk &lt;csaba@redhat.com&gt;
Reviewed-on: http://review.gluster.com/2908
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Venky Shankar &lt;vshankar@redhat.com&gt;
Reviewed-by: Vijay Bellur &lt;vijay@gluster.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The "finally" clause that was meant to cleanup after the
temp mount has not covered the case of getting signalled
(eg. by monitor, upon worker timing out).

So here we "outsource" the cleanup to an ephemeral child process.
Child calls setsid(2) so it won't be bothered by internal process
management. We use a pipe in between worker and the cleanup child;
when child sees the worker end getting closed, it performs the cleanup.
Worker end can get closed either because worker closes it (normal case),
or because worker has terminated (faulty case) -- thus as bonus, we get
a nice uniform handling with no need to differentiate between normal and
faulty cases.

The faulty case that was seen IRL -- ie., users of maintainance mounts
hang in chdir(2) to mount point -- can be simulated for testing purposes
by applying the following patch:

diff --git a/xlators/mount/fuse/src/fuse-bridge.c b/xlators/mount/fuse/src/fuse-bridge.c
index acd3c68..1ce5dc1 100644
--- a/xlators/mount/fuse/src/fuse-bridge.c
+++ b/xlators/mount/fuse/src/fuse-bridge.c
@@ -2918,7 +2918,7 @@ fuse_init (xlator_t *this, fuse_in_header_t *finh, void *msg)
         if (fini-&gt;minor &lt; 9)
                 *priv-&gt;msg0_len_p = sizeof(*finh) + FUSE_COMPAT_WRITE_IN_SIZE;
 #endif
-        ret = send_fuse_obj (this, finh, &amp;fino);
+        ret = priv-&gt;client_pid_set ? 0 : send_fuse_obj (this, finh, &amp;fino);
         if (ret == 0)
                 gf_log ("glusterfs-fuse", GF_LOG_INFO,
                         "FUSE inited with protocol versions:"

Change-Id: I1172bf16ac1006bad48958655572155820e5138d
BUG: 786291
Signed-off-by: Csaba Henk &lt;csaba@redhat.com&gt;
Reviewed-on: http://review.gluster.com/2908
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Venky Shankar &lt;vshankar@redhat.com&gt;
Reviewed-by: Vijay Bellur &lt;vijay@gluster.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>gsyncd: geo-rep: Reduce excessive verbosity in logging</title>
<updated>2012-03-06T17:46:21+00:00</updated>
<author>
<name>Venky Shankar</name>
<email>vshankar@redhat.com</email>
</author>
<published>2012-03-06T12:05:25+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=e657569da2789b1338c81db3d533b90657997a8d'/>
<id>e657569da2789b1338c81db3d533b90657997a8d</id>
<content type='text'>
Backport logging enhancement from master. This patch
reduces per-second logging to per-minute logging during
crawl

Change-Id: Ie51207e6dd8a0257e59f90239cc6960803673223
BUG: 789078
Signed-off-by: Venky Shankar &lt;vshankar@redhat.com&gt;
Reviewed-on: http://review.gluster.com/2879
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Vijay Bellur &lt;vijay@gluster.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Backport logging enhancement from master. This patch
reduces per-second logging to per-minute logging during
crawl

Change-Id: Ie51207e6dd8a0257e59f90239cc6960803673223
BUG: 789078
Signed-off-by: Venky Shankar &lt;vshankar@redhat.com&gt;
Reviewed-on: http://review.gluster.com/2879
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Vijay Bellur &lt;vijay@gluster.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>geo-rep / syncdaemon: make the timeout for establishing the connection to slave configurable</title>
<updated>2012-03-01T17:28:20+00:00</updated>
<author>
<name>Csaba Henk</name>
<email>csaba@redhat.com</email>
</author>
<published>2012-02-29T09:21:09+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=532f2d36e72b4e30984e437ca5a3507de5e897d9'/>
<id>532f2d36e72b4e30984e437ca5a3507de5e897d9</id>
<content type='text'>
It can be set through the connection-timeout tunable but we keep it hidden,
intended as a workaround for some special scenarios not for general use.

Change-Id: I31f9fa3873afa7babc2106ee34484123a01bdc57
BUG: 789078
Signed-off-by: Csaba Henk &lt;csaba@redhat.com&gt;
Reviewed-on: http://review.gluster.com/2840
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Vijay Bellur &lt;vijay@gluster.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
It can be set through the connection-timeout tunable but we keep it hidden,
intended as a workaround for some special scenarios not for general use.

Change-Id: I31f9fa3873afa7babc2106ee34484123a01bdc57
BUG: 789078
Signed-off-by: Csaba Henk &lt;csaba@redhat.com&gt;
Reviewed-on: http://review.gluster.com/2840
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Vijay Bellur &lt;vijay@gluster.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>cli: add geo-replication log-rotate command</title>
<updated>2011-11-04T09:06:44+00:00</updated>
<author>
<name>Venky Shankar</name>
<email>venky@gluster.com</email>
</author>
<published>2011-10-24T09:59:00+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=8e171a03d81452a2998b01997da7647c0b3bf52b'/>
<id>8e171a03d81452a2998b01997da7647c0b3bf52b</id>
<content type='text'>
Rotating geo-replication master/monitor log files from cli.
On invocation, the log file for a given master-slave session
is backed up with the current timestamp suffixed to the file
name and signal is sent to gsyncd to start logging to a new
log file.

Sample commands:

* Rotate log file for this &lt;master&gt;:&lt;slave&gt; session:
gluster volume geo-replication &lt;master&gt; &lt;slave&gt; log-rotate

* Rotate log files for all session for master volume &lt;master&gt;
gluster volume geo-replication &lt;master&gt; log-rotate

* Rotate log files for all sessions:
gluster volume geo-replication log-rotate

Change-Id: If801743e9f37bd282e68d262203141626ce77e55
BUG: 3519
Reviewed-on: http://review.gluster.com/653
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Csaba Henk &lt;csaba@gluster.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Rotating geo-replication master/monitor log files from cli.
On invocation, the log file for a given master-slave session
is backed up with the current timestamp suffixed to the file
name and signal is sent to gsyncd to start logging to a new
log file.

Sample commands:

* Rotate log file for this &lt;master&gt;:&lt;slave&gt; session:
gluster volume geo-replication &lt;master&gt; &lt;slave&gt; log-rotate

* Rotate log files for all session for master volume &lt;master&gt;
gluster volume geo-replication &lt;master&gt; log-rotate

* Rotate log files for all sessions:
gluster volume geo-replication log-rotate

Change-Id: If801743e9f37bd282e68d262203141626ce77e55
BUG: 3519
Reviewed-on: http://review.gluster.com/653
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Csaba Henk &lt;csaba@gluster.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>syncdaemon: fix listing xattrs when there is none and failure handling</title>
<updated>2011-05-31T17:01:45+00:00</updated>
<author>
<name>Csaba Henk</name>
<email>csaba@gluster.com</email>
</author>
<published>2011-05-31T11:06:55+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=ff1b23feab95e4588c134d1c180ae69e14627915'/>
<id>ff1b23feab95e4588c134d1c180ae69e14627915</id>
<content type='text'>
Signed-off-by: Csaba Henk &lt;csaba@gluster.com&gt;
Signed-off-by: Anand Avati &lt;avati@gluster.com&gt;

BUG: 2859 (gsyncd crashes if master vol root has no xattrs)
URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2859

BUG: 2859 (gsyncd crashes if master vol root has no xattrs)
URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2859
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Signed-off-by: Csaba Henk &lt;csaba@gluster.com&gt;
Signed-off-by: Anand Avati &lt;avati@gluster.com&gt;

BUG: 2859 (gsyncd crashes if master vol root has no xattrs)
URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2859

BUG: 2859 (gsyncd crashes if master vol root has no xattrs)
URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2859
</pre>
</div>
</content>
</entry>
<entry>
<title>syncdaemon: some refactor on monitor</title>
<updated>2011-05-31T17:01:41+00:00</updated>
<author>
<name>Csaba Henk</name>
<email>csaba@gluster.com</email>
</author>
<published>2011-05-31T11:06:54+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=a2b30a1848ee69854c1de87cd1e3d1d74e96a964'/>
<id>a2b30a1848ee69854c1de87cd1e3d1d74e96a964</id>
<content type='text'>
- detect faulty state early
- keep the feedback fd in gsyncd module

Signed-off-by: Csaba Henk &lt;csaba@gluster.com&gt;
Signed-off-by: Anand Avati &lt;avati@gluster.com&gt;

BUG: 2537 (gsync autorestart)
URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2537

BUG: 2537 (gsync autorestart)
URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2537
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
- detect faulty state early
- keep the feedback fd in gsyncd module

Signed-off-by: Csaba Henk &lt;csaba@gluster.com&gt;
Signed-off-by: Anand Avati &lt;avati@gluster.com&gt;

BUG: 2537 (gsync autorestart)
URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2537

BUG: 2537 (gsync autorestart)
URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2537
</pre>
</div>
</content>
</entry>
<entry>
<title>syncdaemon: have the monitor kill the worker if it does not connect in 60 sec</title>
<updated>2011-04-22T11:05:20+00:00</updated>
<author>
<name>Csaba Henk</name>
<email>csaba@gluster.com</email>
</author>
<published>2011-04-21T16:43:49+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=775323c1b2fa9a557d3ea74d57e843575f7b1278'/>
<id>775323c1b2fa9a557d3ea74d57e843575f7b1278</id>
<content type='text'>
Signed-off-by: Csaba Henk &lt;csaba@gluster.com&gt;
Signed-off-by: Anand Avati &lt;avati@gluster.com&gt;

BUG: 2736 (gsyncd hangs if crash occurs in the non-main thread)
URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2736
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Signed-off-by: Csaba Henk &lt;csaba@gluster.com&gt;
Signed-off-by: Anand Avati &lt;avati@gluster.com&gt;

BUG: 2736 (gsyncd hangs if crash occurs in the non-main thread)
URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2736
</pre>
</div>
</content>
</entry>
<entry>
<title>syncdaemon: handle errors in glusterfs mount more carefully</title>
<updated>2011-04-21T16:36:46+00:00</updated>
<author>
<name>Csaba Henk</name>
<email>csaba@gluster.com</email>
</author>
<published>2011-04-21T08:56:09+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=b5848ed21b9e718011a8f3f3870c4ed978ff17a5'/>
<id>b5848ed21b9e718011a8f3f3870c4ed978ff17a5</id>
<content type='text'>
Signed-off-by: Csaba Henk &lt;csaba@gluster.com&gt;
Signed-off-by: Anand Avati &lt;avati@gluster.com&gt;

BUG: 2826 (stale auxiliary mounts are left over)
URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2826
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Signed-off-by: Csaba Henk &lt;csaba@gluster.com&gt;
Signed-off-by: Anand Avati &lt;avati@gluster.com&gt;

BUG: 2826 (stale auxiliary mounts are left over)
URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2826
</pre>
</div>
</content>
</entry>
<entry>
<title>syncdaemon: fix double wait in monitor</title>
<updated>2011-04-21T07:39:45+00:00</updated>
<author>
<name>Csaba Henk</name>
<email>csaba@gluster.com</email>
</author>
<published>2011-04-19T09:35:45+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=29ac0febecbca0700bb4b1e2335b8dace5ff452c'/>
<id>29ac0febecbca0700bb4b1e2335b8dace5ff452c</id>
<content type='text'>
Signed-off-by: Csaba Henk &lt;csaba@gluster.com&gt;
Signed-off-by: Anand Avati &lt;avati@gluster.com&gt;

BUG: 2816 ([glusterfs-3.2.0qa14]: gsyncd monitor crashed)
URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2816
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Signed-off-by: Csaba Henk &lt;csaba@gluster.com&gt;
Signed-off-by: Anand Avati &lt;avati@gluster.com&gt;

BUG: 2816 ([glusterfs-3.2.0qa14]: gsyncd monitor crashed)
URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2816
</pre>
</div>
</content>
</entry>
</feed>
