<feed xmlns='http://www.w3.org/2005/Atom'>
<title>glusterfs.git/tools/glusterfind/src, branch master</title>
<subtitle></subtitle>
<link rel='alternate' type='text/html' href='http://dev.gluster.org/cgit/glusterfs.git/'/>
<entry>
<title>[RFC]glusterd-utils.c: display which options have changed</title>
<updated>2020-07-10T05:15:16+00:00</updated>
<author>
<name>Yaniv Kaul</name>
<email>ykaul@redhat.com</email>
</author>
<published>2020-07-07T18:49:50+00:00</published>
<link rel='alternate' type='text/html' href='http://dev.gluster.org/cgit/glusterfs.git/commit/?id=f3df1a5d6e44f70c51a3cdbb4873c1c5a2fd0771'/>
<id>f3df1a5d6e44f70c51a3cdbb4873c1c5a2fd0771</id>
<content type='text'>
Display which options were not changed from the default.
The user may have opted to change some global or volume options
from the default they were initially. Display '(DEFAULT)' if the values
used are those that were not explicitly set by the user.

Example output:
Option                                  Value
------                                  -----
cluster.server-quorum-ratio             50
cluster.enable-shared-storage           disable (DEFAULT)
cluster.op-version                      80000
cluster.max-op-version                  90000
cluster.brick-multiplex                 disable (DEFAULT)
cluster.max-bricks-per-process          250 (DEFAULT)
glusterd.vol_count_per_thread           100 (DEFAULT)
cluster.localtime-logging               disable (DEFAULT)
cluster.daemon-log-level                INFO (DEFAULT)

Since glusterfind uses the value, it is now filtering the value
and only picking the 1st word (which is the value itself) and ignores
the rest, which may now be '(DEFAULT)'.

Fixes: #1357
Change-Id: I7c59055158d099a5de38943f2169fd02c77f5d09
Signed-off-by: Yaniv Kaul &lt;ykaul@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Display which options were not changed from the default.
The user may have opted to change some global or volume options
from the default they were initially. Display '(DEFAULT)' if the values
used are those that were not explicitly set by the user.

Example output:
Option                                  Value
------                                  -----
cluster.server-quorum-ratio             50
cluster.enable-shared-storage           disable (DEFAULT)
cluster.op-version                      80000
cluster.max-op-version                  90000
cluster.brick-multiplex                 disable (DEFAULT)
cluster.max-bricks-per-process          250 (DEFAULT)
glusterd.vol_count_per_thread           100 (DEFAULT)
cluster.localtime-logging               disable (DEFAULT)
cluster.daemon-log-level                INFO (DEFAULT)

Since glusterfind uses the value, it is now filtering the value
and only picking the 1st word (which is the value itself) and ignores
the rest, which may now be '(DEFAULT)'.

Fixes: #1357
Change-Id: I7c59055158d099a5de38943f2169fd02c77f5d09
Signed-off-by: Yaniv Kaul &lt;ykaul@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>tools/glusterfind: Remove an extra argument</title>
<updated>2020-01-14T06:16:11+00:00</updated>
<author>
<name>Shwetha K Acharya</name>
<email>sacharya@redhat.com</email>
</author>
<published>2020-01-14T05:21:06+00:00</published>
<link rel='alternate' type='text/html' href='http://dev.gluster.org/cgit/glusterfs.git/commit/?id=d73872e764214f8071c8915536a75bdac1e5e685'/>
<id>d73872e764214f8071c8915536a75bdac1e5e685</id>
<content type='text'>
fixes: bz#1790748
Change-Id: I1cb12c975142794139456d0f8e99fbdbb03c53a1
Signed-off-by: Shwetha K Acharya &lt;sacharya@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
fixes: bz#1790748
Change-Id: I1cb12c975142794139456d0f8e99fbdbb03c53a1
Signed-off-by: Shwetha K Acharya &lt;sacharya@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>glusterfind: Fix py2/py3 issues</title>
<updated>2020-01-10T11:26:15+00:00</updated>
<author>
<name>Kotresh HR</name>
<email>khiremat@redhat.com</email>
</author>
<published>2020-01-10T11:18:14+00:00</published>
<link rel='alternate' type='text/html' href='http://dev.gluster.org/cgit/glusterfs.git/commit/?id=45894c39a4d05ed1f6a6f1bdbeafb5fe74ef29c3'/>
<id>45894c39a4d05ed1f6a6f1bdbeafb5fe74ef29c3</id>
<content type='text'>
1. In dictionary values(), returns list in py2 and not in py3.
   So explicitly convert it into list.
2. xattr module returns values in bytes. So explicitly convert
   them to str to work both with py2 and py3

fixes: bz#1789439
Change-Id: I27a639cda4f7a4ece9744a97c3d16e247906bd94
Signed-off-by: Kotresh HR &lt;khiremat@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
1. In dictionary values(), returns list in py2 and not in py3.
   So explicitly convert it into list.
2. xattr module returns values in bytes. So explicitly convert
   them to str to work both with py2 and py3

fixes: bz#1789439
Change-Id: I27a639cda4f7a4ece9744a97c3d16e247906bd94
Signed-off-by: Kotresh HR &lt;khiremat@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>tools/glusterfind: handle offline bricks</title>
<updated>2019-10-31T14:31:49+00:00</updated>
<author>
<name>Milind Changire</name>
<email>mchangir@redhat.com</email>
</author>
<published>2017-01-05T14:23:19+00:00</published>
<link rel='alternate' type='text/html' href='http://dev.gluster.org/cgit/glusterfs.git/commit/?id=42c1605f42b89520d4d05806d7074e9e93b63640'/>
<id>42c1605f42b89520d4d05806d7074e9e93b63640</id>
<content type='text'>
Problem:
glusterfind is unable to copy remote output file to local node when a
remove-brick is in progress on the remote node. After copying remote
files, in the --full output listing path, a "sort -u" command is run on
the collected files. However, "sort" exits with an error code if it
finds any file missing.

Solution:
Maintain a map of (pid, output file) when the node commands are started
and remove the mapping for the pid for which the command returns an
error. Use the list of files present in the map for the "sort" command.

Change-Id: Ie6e019037379f4cb163f24b1c65eb382efc2fb3b
fixes: bz#1410439
Signed-off-by: Milind Changire &lt;mchangir@redhat.com&gt;
Signed-off-by: Shwetha K Acharya &lt;sacharya@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Problem:
glusterfind is unable to copy remote output file to local node when a
remove-brick is in progress on the remote node. After copying remote
files, in the --full output listing path, a "sort -u" command is run on
the collected files. However, "sort" exits with an error code if it
finds any file missing.

Solution:
Maintain a map of (pid, output file) when the node commands are started
and remove the mapping for the pid for which the command returns an
error. Use the list of files present in the map for the "sort" command.

Change-Id: Ie6e019037379f4cb163f24b1c65eb382efc2fb3b
fixes: bz#1410439
Signed-off-by: Milind Changire &lt;mchangir@redhat.com&gt;
Signed-off-by: Shwetha K Acharya &lt;sacharya@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>geo-rep: Fix spelling errors</title>
<updated>2019-09-24T11:42:11+00:00</updated>
<author>
<name>Shwetha K Acharya</name>
<email>sacharya@redhat.com</email>
</author>
<published>2019-08-16T06:07:40+00:00</published>
<link rel='alternate' type='text/html' href='http://dev.gluster.org/cgit/glusterfs.git/commit/?id=e15ca15d7cd39d913d9276f93d7ffd2dd7b85611'/>
<id>e15ca15d7cd39d913d9276f93d7ffd2dd7b85611</id>
<content type='text'>
Fixes: bz#1741779
Change-Id: I708b6b7e6c520dee10445528e6f99ba38e141c25
Signed-off-by: Shwetha K Acharya &lt;sacharya@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Fixes: bz#1741779
Change-Id: I708b6b7e6c520dee10445528e6f99ba38e141c25
Signed-off-by: Shwetha K Acharya &lt;sacharya@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>glusterfind: integrate with gfid2path</title>
<updated>2019-06-20T06:17:37+00:00</updated>
<author>
<name>Milind Changire</name>
<email>mchangir@redhat.com</email>
</author>
<published>2019-02-19T07:19:12+00:00</published>
<link rel='alternate' type='text/html' href='http://dev.gluster.org/cgit/glusterfs.git/commit/?id=6f70d4a6377365c352dad07d8eae0b2bd7af6fc6'/>
<id>6f70d4a6377365c352dad07d8eae0b2bd7af6fc6</id>
<content type='text'>
Integration with gfid2path helps avoid file-system crawl and saves
precious time. Extended attributes starting with "trusted.gfid2path."
are read and the &lt;PGFID&gt;/&lt;BN&gt; values are extracted and the &lt;PGFID&gt; is
iteratively resolved from the brick backend to arrive at the full path.

Change-Id: I593b02880e3413b77bfceed4a36b00d401f03bc0
fixes: #529
Signed-off-by: Milind Changire &lt;mchangir@redhat.com&gt;
Signed-off-by: Shwetha K Acharya &lt;sacharya@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Integration with gfid2path helps avoid file-system crawl and saves
precious time. Extended attributes starting with "trusted.gfid2path."
are read and the &lt;PGFID&gt;/&lt;BN&gt; values are extracted and the &lt;PGFID&gt; is
iteratively resolved from the brick backend to arrive at the full path.

Change-Id: I593b02880e3413b77bfceed4a36b00d401f03bc0
fixes: #529
Signed-off-by: Milind Changire &lt;mchangir@redhat.com&gt;
Signed-off-by: Shwetha K Acharya &lt;sacharya@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>tools/glusterfind : validate session name</title>
<updated>2019-04-26T07:16:12+00:00</updated>
<author>
<name>Saravanakumar Arumugam</name>
<email>sarumuga@redhat.com</email>
</author>
<published>2015-07-09T10:26:28+00:00</published>
<link rel='alternate' type='text/html' href='http://dev.gluster.org/cgit/glusterfs.git/commit/?id=6434e8687572fabd5e9092652ff36e35f868b67b'/>
<id>6434e8687572fabd5e9092652ff36e35f868b67b</id>
<content type='text'>
Validate a session name(during create) for the following:
1. minimum 2 character length.
2. Maximum 256 characters.
3. No special characters apart from underscore, hyphen allowed.

Also, validate volume(expect, while using glusterfind list).

Change-Id: I1b1e64e218f93d0a531d3cf69fc2ce7e2ed11d01
BUG: 1241494
Signed-off-by: Saravanakumar Arumugam &lt;sarumuga@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Validate a session name(during create) for the following:
1. minimum 2 character length.
2. Maximum 256 characters.
3. No special characters apart from underscore, hyphen allowed.

Also, validate volume(expect, while using glusterfind list).

Change-Id: I1b1e64e218f93d0a531d3cf69fc2ce7e2ed11d01
BUG: 1241494
Signed-off-by: Saravanakumar Arumugam &lt;sarumuga@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>libgfchangelog : use find_library to locate shared library</title>
<updated>2019-04-15T14:27:59+00:00</updated>
<author>
<name>Sunny Kumar</name>
<email>sunkumar@redhat.com</email>
</author>
<published>2019-04-12T14:25:10+00:00</published>
<link rel='alternate' type='text/html' href='http://dev.gluster.org/cgit/glusterfs.git/commit/?id=f316c8b797283818bd800569771870a4b9bf1310'/>
<id>f316c8b797283818bd800569771870a4b9bf1310</id>
<content type='text'>
Issue:

libgfchangelog.so: cannot open shared object file

Due to hardcoded shared library name runtime loader looks for particular version of
a shared library.

Solution:

Using find_library to locate shared library at runtime solves this issue.

Traceback (most recent call last):
  File "/usr/libexec/glusterfs/python/syncdaemon/gsyncd.py", line 323, in main
    func(args)
  File "/usr/libexec/glusterfs/python/syncdaemon/subcmds.py", line 82, in subcmd_worker
    local.service_loop(remote)
  File "/usr/libexec/glusterfs/python/syncdaemon/resource.py", line 1261, in service_loop
    changelog_agent.init()
  File "/usr/libexec/glusterfs/python/syncdaemon/repce.py", line 233, in __call__
    return self.ins(self.meth, *a)
  File "/usr/libexec/glusterfs/python/syncdaemon/repce.py", line 215, in __call__
    raise res
OSError: libgfchangelog.so: cannot open shared object file: No such file or directory

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

libgfchangelog.so: cannot open shared object file

Due to hardcoded shared library name runtime loader looks for particular version of
a shared library.

Solution:

Using find_library to locate shared library at runtime solves this issue.

Traceback (most recent call last):
  File "/usr/libexec/glusterfs/python/syncdaemon/gsyncd.py", line 323, in main
    func(args)
  File "/usr/libexec/glusterfs/python/syncdaemon/subcmds.py", line 82, in subcmd_worker
    local.service_loop(remote)
  File "/usr/libexec/glusterfs/python/syncdaemon/resource.py", line 1261, in service_loop
    changelog_agent.init()
  File "/usr/libexec/glusterfs/python/syncdaemon/repce.py", line 233, in __call__
    return self.ins(self.meth, *a)
  File "/usr/libexec/glusterfs/python/syncdaemon/repce.py", line 215, in __call__
    raise res
OSError: libgfchangelog.so: cannot open shared object file: No such file or directory

Change-Id: I3dd013d701ed1cd99ba7ef20d1898f343e1db8f5
fixes: bz#1699394
Signed-off-by: Sunny Kumar &lt;sunkumar@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>glusterfind: revert shebangs to #!/usr/bin/python3</title>
<updated>2019-02-26T03:46:35+00:00</updated>
<author>
<name>Kaleb S. KEITHLEY</name>
<email>kkeithle@redhat.com</email>
</author>
<published>2019-02-22T14:25:26+00:00</published>
<link rel='alternate' type='text/html' href='http://dev.gluster.org/cgit/glusterfs.git/commit/?id=5feeed24f1e1fe2891e1418df23bacf0cfb991e6'/>
<id>5feeed24f1e1fe2891e1418df23bacf0cfb991e6</id>
<content type='text'>
Using #!/usr/bin/env python is illegal in Fedora and RHEL packaging.
(Debian and SUSE packaging will complain about it too but don't
enforce it like Fedora packaging does. Yet.)

We went through a giant exercise fixing these once already.

The python needs to be python2/python3 clean. There is a build
scriptlet that converts the shebangs back to /usr/bin/python on rhel7.

Change-Id: If208a2557f7e5d727cda98c27905e249cf485d5b
updates: bz#1193929
Signed-off-by: Kaleb S. KEITHLEY &lt;kkeithle@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Using #!/usr/bin/env python is illegal in Fedora and RHEL packaging.
(Debian and SUSE packaging will complain about it too but don't
enforce it like Fedora packaging does. Yet.)

We went through a giant exercise fixing these once already.

The python needs to be python2/python3 clean. There is a build
scriptlet that converts the shebangs back to /usr/bin/python on rhel7.

Change-Id: If208a2557f7e5d727cda98c27905e249cf485d5b
updates: bz#1193929
Signed-off-by: Kaleb S. KEITHLEY &lt;kkeithle@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>glusterfind: python2 to python3 compat</title>
<updated>2019-02-02T03:08:45+00:00</updated>
<author>
<name>Shwetha K Acharya</name>
<email>sacharya@redhat.com</email>
</author>
<published>2018-12-10T08:15:34+00:00</published>
<link rel='alternate' type='text/html' href='http://dev.gluster.org/cgit/glusterfs.git/commit/?id=23e530a135fc419fba401448290f8b1809e23f53'/>
<id>23e530a135fc419fba401448290f8b1809e23f53</id>
<content type='text'>
Made necessary modifications to ensure python3 compatibilty.

fixes: bz#1658116
Change-Id: I5cf1d0447eaf3c44eb444245d1f67aadd60705c3
Signed-off-by: Shwetha K Acharya &lt;sacharya@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Made necessary modifications to ensure python3 compatibilty.

fixes: bz#1658116
Change-Id: I5cf1d0447eaf3c44eb444245d1f67aadd60705c3
Signed-off-by: Shwetha K Acharya &lt;sacharya@redhat.com&gt;
</pre>
</div>
</content>
</entry>
</feed>
