<feed xmlns='http://www.w3.org/2005/Atom'>
<title>glusterfs.git/geo-replication, branch v7.0rc2</title>
<subtitle></subtitle>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/'/>
<entry>
<title>geo-rep : fix sub-command during worker connection</title>
<updated>2019-09-25T11:31:54+00:00</updated>
<author>
<name>Sunny Kumar</name>
<email>sunkumar@redhat.com</email>
</author>
<published>2019-09-20T19:37:30+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=6b3fec37931cbf3f7995b119e5a14702d5226772'/>
<id>6b3fec37931cbf3f7995b119e5a14702d5226772</id>
<content type='text'>
Problem:

Geo-rep session for non-root going faulty.

Solution:

During worker start we do not construct slave url and use 'args.resource_remote'
which is basically just slave-hostname.
This works better for root session but fails in non-root session during
ssh command.
Using slave url solves this issue.

Backport of:
 &gt; Patch: https://review.gluster.org/23465
 &gt; BUG: 1753928
 &gt; Change-Id: Ib83552fde77f81c208896494b323514ab37ebf22
 &gt; Signed-off-by: Sunny Kumar &lt;sunkumar@redhat.com&gt;

fixes: bz#1755213
Change-Id: Ib83552fde77f81c208896494b323514ab37ebf22
Signed-off-by: Kotresh HR &lt;khiremat@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Problem:

Geo-rep session for non-root going faulty.

Solution:

During worker start we do not construct slave url and use 'args.resource_remote'
which is basically just slave-hostname.
This works better for root session but fails in non-root session during
ssh command.
Using slave url solves this issue.

Backport of:
 &gt; Patch: https://review.gluster.org/23465
 &gt; BUG: 1753928
 &gt; Change-Id: Ib83552fde77f81c208896494b323514ab37ebf22
 &gt; Signed-off-by: Sunny Kumar &lt;sunkumar@redhat.com&gt;

fixes: bz#1755213
Change-Id: Ib83552fde77f81c208896494b323514ab37ebf22
Signed-off-by: Kotresh HR &lt;khiremat@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>geo-rep: performance improvement while syncing renames with existing gfid</title>
<updated>2019-09-25T04:46:37+00:00</updated>
<author>
<name>Sunny Kumar</name>
<email>sunkumar@redhat.com</email>
</author>
<published>2019-09-20T04:09:12+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=284ecd3ecbfbcc9e7791bacc6305807eb2805fff'/>
<id>284ecd3ecbfbcc9e7791bacc6305807eb2805fff</id>
<content type='text'>
Problem:
The bug[1] addresses issue of data inconsistency when handling RENAME with
existing destination. This fix requires some performance tuning considering
this issue occurs in heavy rename workload.

Solution:
If distribution count for master volume is one do not verify op's on
master and go ahead with rename.

The performance improvement with this patch can only be observed if
master volume has distribution count one.

[1]. https://bugzilla.redhat.com/show_bug.cgi?id=1694820

Backport of:

 &gt; Patch: https://review.gluster.org/23459/
 &gt; BUG: 1753857
 &gt; Change-Id: I8e9bcd575e7e35f40f9f78b7961c92dee642f47b
 &gt; Signed-off-by: Sunny Kumar &lt;sunkumar@redhat.com&gt;
(cherry picked from commit 30d3608c43be119f75da7798d88b94601dedcb29)


Change-Id: I8e9bcd575e7e35f40f9f78b7961c92dee642f47b
Signed-off-by: Sunny Kumar &lt;sunkumar@redhat.com&gt;
fixes: bz#1755212
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Problem:
The bug[1] addresses issue of data inconsistency when handling RENAME with
existing destination. This fix requires some performance tuning considering
this issue occurs in heavy rename workload.

Solution:
If distribution count for master volume is one do not verify op's on
master and go ahead with rename.

The performance improvement with this patch can only be observed if
master volume has distribution count one.

[1]. https://bugzilla.redhat.com/show_bug.cgi?id=1694820

Backport of:

 &gt; Patch: https://review.gluster.org/23459/
 &gt; BUG: 1753857
 &gt; Change-Id: I8e9bcd575e7e35f40f9f78b7961c92dee642f47b
 &gt; Signed-off-by: Sunny Kumar &lt;sunkumar@redhat.com&gt;
(cherry picked from commit 30d3608c43be119f75da7798d88b94601dedcb29)


Change-Id: I8e9bcd575e7e35f40f9f78b7961c92dee642f47b
Signed-off-by: Sunny Kumar &lt;sunkumar@redhat.com&gt;
fixes: bz#1755212
</pre>
</div>
</content>
</entry>
<entry>
<title>geo-rep: Fix mount broker setup issue</title>
<updated>2019-08-19T11:20:02+00:00</updated>
<author>
<name>Kotresh HR</name>
<email>khiremat@redhat.com</email>
</author>
<published>2019-07-31T10:10:55+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=8b7ceb3934f8e2dbcbabe5d1c0244c2bacda92c3'/>
<id>8b7ceb3934f8e2dbcbabe5d1c0244c2bacda92c3</id>
<content type='text'>
Even the use builtin 'type' command as in patch [1]
causes issues if argument in question is not part of PATH
environment variable for that user. This patch fixes the
same by doing source /etc/profile. This was already being
used in another part of script.

[1] https://review.gluster.org/23089

Backport of:
 &gt; Patch: https://review.gluster.org/23136/
 &gt; Change-Id: Iceb78835967ec6a4350983eec9af28398410c002
 &gt; BUG: 1734738
 &gt; Signed-off-by: Kotresh HR &lt;khiremat@redhat.com&gt;
(cherry picked from commit 84f7794547522463841068063b22fd3a8d8fca2b)

Change-Id: Iceb78835967ec6a4350983eec9af28398410c002
fixes: bz#1739442
Signed-off-by: Kotresh HR &lt;khiremat@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Even the use builtin 'type' command as in patch [1]
causes issues if argument in question is not part of PATH
environment variable for that user. This patch fixes the
same by doing source /etc/profile. This was already being
used in another part of script.

[1] https://review.gluster.org/23089

Backport of:
 &gt; Patch: https://review.gluster.org/23136/
 &gt; Change-Id: Iceb78835967ec6a4350983eec9af28398410c002
 &gt; BUG: 1734738
 &gt; Signed-off-by: Kotresh HR &lt;khiremat@redhat.com&gt;
(cherry picked from commit 84f7794547522463841068063b22fd3a8d8fca2b)

Change-Id: Iceb78835967ec6a4350983eec9af28398410c002
fixes: bz#1739442
Signed-off-by: Kotresh HR &lt;khiremat@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>geo-rep: Fix permissions for GEOREP_DIR in non-root setup</title>
<updated>2019-06-19T03:20:14+00:00</updated>
<author>
<name>Sunny Kumar</name>
<email>sunkumar@redhat.com</email>
</author>
<published>2019-06-18T10:55:35+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=c8f302b7b34b45b2cf340634ed66de899f900c23'/>
<id>c8f302b7b34b45b2cf340634ed66de899f900c23</id>
<content type='text'>
During mountbroker setup: 'gluster-mountbroker &lt;mountbroker-root&gt; &lt;group&gt;'
commad to set the permission and group for GEOREP_DIR directory
(/var/lib/glusterd/geo-replication) fails due to extra argument, which is
enssential for non-root geo-rep setup.

fixes: bz#1721441
Change-Id: Ia83442733bf0b29f630e8c9e398097316efca092
Signed-off-by: Sunny Kumar &lt;sunkumar@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
During mountbroker setup: 'gluster-mountbroker &lt;mountbroker-root&gt; &lt;group&gt;'
commad to set the permission and group for GEOREP_DIR directory
(/var/lib/glusterd/geo-replication) fails due to extra argument, which is
enssential for non-root geo-rep setup.

fixes: bz#1721441
Change-Id: Ia83442733bf0b29f630e8c9e398097316efca092
Signed-off-by: Sunny Kumar &lt;sunkumar@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>geo-rep/gsyncd: name is not freed in one of the cases</title>
<updated>2019-06-17T03:39:21+00:00</updated>
<author>
<name>Sheetal Pamecha</name>
<email>spamecha@redhat.com</email>
</author>
<published>2019-05-31T11:51:22+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=1cb32e3df2775dabc57df6931ffce96aece7109e'/>
<id>1cb32e3df2775dabc57df6931ffce96aece7109e</id>
<content type='text'>
CID: 1400730
updates: bz#789278
Change-Id: I0f6924050a31d3d2cc0b555f859920e349728e0a
Signed-off-by: Sheetal Pamecha &lt;spamecha@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
CID: 1400730
updates: bz#789278
Change-Id: I0f6924050a31d3d2cc0b555f859920e349728e0a
Signed-off-by: Sheetal Pamecha &lt;spamecha@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>geo-rep : fix mountbroker setup</title>
<updated>2019-06-12T04:16:58+00:00</updated>
<author>
<name>Sunny Kumar</name>
<email>sunkumar@redhat.com</email>
</author>
<published>2019-05-13T09:02:53+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=3dd03146bb7037ae2ebea0579d0b81be27fdd927'/>
<id>3dd03146bb7037ae2ebea0579d0b81be27fdd927</id>
<content type='text'>
Problem:

Unable to setup mountbroker root directory while creating geo-replication
session for non-root user.

Casue:
With patch[1] which defines the max-port for glusterd one extra sapce
got added in field of 'option max-port'.
[1]. https://review.gluster.org/#/c/glusterfs/+/21872/

In geo-rep spliting of key-value pair form vol file was done on the
basis of space so this additional space caused "ValueError: too many values
to unpack".

Solution:
Use split so that it can treat consecutive whitespace as a single separator.

Fixes: bz#1709248
Change-Id: Ia22070a43f95d66d84cb35487f23f9ee58b68c73
Signed-off-by: Sunny Kumar &lt;sunkumar@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Problem:

Unable to setup mountbroker root directory while creating geo-replication
session for non-root user.

Casue:
With patch[1] which defines the max-port for glusterd one extra sapce
got added in field of 'option max-port'.
[1]. https://review.gluster.org/#/c/glusterfs/+/21872/

In geo-rep spliting of key-value pair form vol file was done on the
basis of space so this additional space caused "ValueError: too many values
to unpack".

Solution:
Use split so that it can treat consecutive whitespace as a single separator.

Fixes: bz#1709248
Change-Id: Ia22070a43f95d66d84cb35487f23f9ee58b68c73
Signed-off-by: Sunny Kumar &lt;sunkumar@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>geo-rep: Convert gfid conflict resolutiong logs into debug</title>
<updated>2019-05-14T05:51:48+00:00</updated>
<author>
<name>Kotresh HR</name>
<email>khiremat@redhat.com</email>
</author>
<published>2019-05-14T05:35:45+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=40b7121afbd3969706acb8198cf660a710583e70'/>
<id>40b7121afbd3969706acb8198cf660a710583e70</id>
<content type='text'>
The gfid conflict resolution code path is not supposed
to hit in generic code path. But few of the heavy rename
workload (BUG: 1694820) makes it a generic case. So
logging the entries to be fixed as INFO floods the log
in these particular workloads. Hence convert them to DEBUG.

fixes: bz#1709653
Change-Id: I4d5e102b87be5fe5b54f78f329e588882d72b9d9
Signed-off-by: Kotresh HR &lt;khiremat@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The gfid conflict resolution code path is not supposed
to hit in generic code path. But few of the heavy rename
workload (BUG: 1694820) makes it a generic case. So
logging the entries to be fixed as INFO floods the log
in these particular workloads. Hence convert them to DEBUG.

fixes: bz#1709653
Change-Id: I4d5e102b87be5fe5b54f78f329e588882d72b9d9
Signed-off-by: Kotresh HR &lt;khiremat@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>geo-rep: Fix sync hang with tarssh</title>
<updated>2019-05-13T11:06:41+00:00</updated>
<author>
<name>Kotresh HR</name>
<email>khiremat@redhat.com</email>
</author>
<published>2019-05-08T05:56:06+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=f0d3690e8916cfb5e10a0df2e9721a0fd079bfce'/>
<id>f0d3690e8916cfb5e10a0df2e9721a0fd079bfce</id>
<content type='text'>
Problem:
Geo-rep sync hangs when tarssh is used as sync
engine at heavy workload.

Analysis and Root cause:
It's found out that the tar process was hung.
When debugged further, it's found out that stderr
buffer of tar process on master was full i.e., 64k.
When the buffer was copied to a file from /proc/pid/fd/2,
the hang is resolved.

This can happen when files picked by tar process
to sync doesn't exist on master anymore. If this count
increases around 1k, the stderr buffer is filled up.

Fix:
The tar process is executed using Popen with stderr as PIPE.
The final execution is something like below.

tar | ssh &lt;args&gt; root@slave tar --overwrite -xf - -C &lt;path&gt;

It was waiting on ssh process first using communicate() and then tar.
Note that communicate() reads stdout and stderr. So when stderr of tar
process is filled up, there is no one to read until untar via ssh is
completed. This can't happen and leads to deadlock.
Hence we should be waiting on both process parallely, so that stderr is
read on both processes.

Change-Id: I609c7cc5c07e210c504771115b4d551a2e891adf
fixes: bz#1707728
Signed-off-by: Kotresh HR &lt;khiremat@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Problem:
Geo-rep sync hangs when tarssh is used as sync
engine at heavy workload.

Analysis and Root cause:
It's found out that the tar process was hung.
When debugged further, it's found out that stderr
buffer of tar process on master was full i.e., 64k.
When the buffer was copied to a file from /proc/pid/fd/2,
the hang is resolved.

This can happen when files picked by tar process
to sync doesn't exist on master anymore. If this count
increases around 1k, the stderr buffer is filled up.

Fix:
The tar process is executed using Popen with stderr as PIPE.
The final execution is something like below.

tar | ssh &lt;args&gt; root@slave tar --overwrite -xf - -C &lt;path&gt;

It was waiting on ssh process first using communicate() and then tar.
Note that communicate() reads stdout and stderr. So when stderr of tar
process is filled up, there is no one to read until untar via ssh is
completed. This can't happen and leads to deadlock.
Hence we should be waiting on both process parallely, so that stderr is
read on both processes.

Change-Id: I609c7cc5c07e210c504771115b4d551a2e891adf
fixes: bz#1707728
Signed-off-by: Kotresh HR &lt;khiremat@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>geo-rep: Fix sync-method config</title>
<updated>2019-05-09T05:18:05+00:00</updated>
<author>
<name>Kotresh HR</name>
<email>khiremat@redhat.com</email>
</author>
<published>2019-05-08T05:26:31+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=84b7cc57df065e2d8c0ac88b179aab3614ec814a'/>
<id>84b7cc57df065e2d8c0ac88b179aab3614ec814a</id>
<content type='text'>
Problem:
When 'use_tarssh' is set to true, it exits with successful
message but the default 'rsync' was used as sync-engine.
The new config 'sync-method' is not allowed to set from cli.

Analysis and Fix:
The 'use_tarssh' config is deprecated with new
config framework and 'sync-method' is the new
config to choose sync-method i.e. tarssh or rsync.
This patch fixes the 'sync-method' config. The allowed
values are tarssh and rsync.

Change-Id: I0edb0319cad0455b29e49f2f08a64ce324735e84
fixes: bz#1707686
Signed-off-by: Kotresh HR &lt;khiremat@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Problem:
When 'use_tarssh' is set to true, it exits with successful
message but the default 'rsync' was used as sync-engine.
The new config 'sync-method' is not allowed to set from cli.

Analysis and Fix:
The 'use_tarssh' config is deprecated with new
config framework and 'sync-method' is the new
config to choose sync-method i.e. tarssh or rsync.
This patch fixes the 'sync-method' config. The allowed
values are tarssh and rsync.

Change-Id: I0edb0319cad0455b29e49f2f08a64ce324735e84
fixes: bz#1707686
Signed-off-by: Kotresh HR &lt;khiremat@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>geo-rep: fix incorrectly formatted authorized_keys</title>
<updated>2019-05-08T10:29:03+00:00</updated>
<author>
<name>Sunny Kumar</name>
<email>sunkumar@redhat.com</email>
</author>
<published>2019-05-07T08:05:47+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=5c9ec08d36b825cd8abd0489dc5f77488dbfbc8b'/>
<id>5c9ec08d36b825cd8abd0489dc5f77488dbfbc8b</id>
<content type='text'>
There are two ways for creating secret pem pub file during geo-rep
setup.
1. gluster-georep-sshkey generate
2. gluster system:: execute gsec_create

Below patch solves this problem for `gluster-georep-sshkey generate`
method.
Patch link: https://review.gluster.org/#/c/glusterfs/+/22246/

This patch is added to support old way of creating secret pem pub file
`gluster system:: execute gsec_create`.

Problem:  While Geo-rep setup when creating an ssh authorized_keys
          the geo-rep setup inserts an extra space before the "ssh-rsa" label.
          This gets flagged by an enterprise customer's security scan as a
          security violation.
Solution: Remove extra space while creating secret key.

fixes: bz#1679401
Change-Id: I92ba7e25aaa5123dae9ebe2f3c68d14315aa5f0e
Signed-off-by: Sunny Kumar &lt;sunkumar@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
There are two ways for creating secret pem pub file during geo-rep
setup.
1. gluster-georep-sshkey generate
2. gluster system:: execute gsec_create

Below patch solves this problem for `gluster-georep-sshkey generate`
method.
Patch link: https://review.gluster.org/#/c/glusterfs/+/22246/

This patch is added to support old way of creating secret pem pub file
`gluster system:: execute gsec_create`.

Problem:  While Geo-rep setup when creating an ssh authorized_keys
          the geo-rep setup inserts an extra space before the "ssh-rsa" label.
          This gets flagged by an enterprise customer's security scan as a
          security violation.
Solution: Remove extra space while creating secret key.

fixes: bz#1679401
Change-Id: I92ba7e25aaa5123dae9ebe2f3c68d14315aa5f0e
Signed-off-by: Sunny Kumar &lt;sunkumar@redhat.com&gt;
</pre>
</div>
</content>
</entry>
</feed>
