[Bugs] [Bug 1789439] New: Glusterfind pre command fails
bugzilla at redhat.com
bugzilla at redhat.com
Thu Jan 9 15:21:44 UTC 2020
https://bugzilla.redhat.com/show_bug.cgi?id=1789439
Bug ID: 1789439
Summary: Glusterfind pre command fails
Product: GlusterFS
Version: mainline
Hardware: x86_64
OS: Linux
Status: NEW
Component: glusterfind
Severity: high
Assignee: bugs at gluster.org
Reporter: rkothiya at redhat.com
QA Contact: bugs at gluster.org
CC: bugs at gluster.org, khiremat at redhat.com,
sabose at redhat.com
Target Milestone: ---
Classification: Community
Description of problem:
Glusterfind pre command fails
Version-Release number of selected component (if applicable):
Distro : RHEL7.7
Kernel version : 3.10.0-1061.el7.x86_64
Python 3.6.8
Gluster version : upstream at commit 8d55951 as shown below
# git branch -v
* master 8d55951 leases: re-alignment of structures
# gluster --version | head -1
glusterfs 8dev
How reproducible:
Easily
Steps to Reproduce:
1. Create and mount a volume replicated volume.
2. create a session as follows :
# glusterfind create s1 repvol
3. Update some files on the gluster client
4. fire the glusterfind pre command :
# glusterfind pre s1 repvol output.txt
===========================
Exact steps that I did :
===========================
1. Create a replicated volume.
2. Mount the volume on the client as follows :
# mount -t glusterfs 192.168.1.18:/repvol /mnt/t1
3. Create a few files on the mounted volume :
# cd /mnt/t1
# echo "hi" > file1
# echo "hi" > file2
4. Create a session on the gluster server :
# glusterfind create s1 repvol
192.168.1.22 - pre failed; stdout (including remote stderr):
b'192.168.1.22: /testxfs/brick-a1/brick Historical Changelogs not
available: [Errno 2] gf_history_changelog: No such file or directory\n'
stderr:
b''
192.168.1.18 - pre failed; stdout (including remote stderr):
b'Connection to 192.168.1.18 closed.\r\n'
stderr:
b'192.168.1.18: /testxfs/brick-a1/brick Historical Changelogs not
available: [Errno 2] gf_history_changelog: No such file or directory\r\n'
Generated output file /testxfs/output.txt
5. Create one more file on the client :
# echo "hi" > file3
6. Fire glusterfind pre command :
# glusterfind pre s1 repvol output.txt
Post command is not run after last pre, use --regenerate-outfile
7. Fire glusterfind post command :
# glusterfind post s1 repvol
Session s1 with volume repvol updated
8. Fire the glusterfind pre command :
# glusterfind pre s1 repvol output.txt
Generated output file /testxfs/output.txt
9. You can see the newly created file :
# cat /testxfs/output.txt
NEW file3
10. Now append the same file on the client :
# echo "hi" >> file3
11. On the server fire the glusterfind post command :
# glusterfind post s1 repvol
Session s1 with volume repvol updated
12. Now when pre command is fired we get the below error :
# glusterfind pre s1 repvol output.txt
192.168.1.22 - pre failed; stdout (including remote stderr):
b'Traceback (most recent call last):\n File
"/usr/local/libexec/glusterfs/glusterfind/changelog.py", line 458, in
<module>\n actual_end = changelog_crawl(args.brick, start, end, args)\n
File "/usr/local/libexec/glusterfs/glusterfind/changelog.py", line 392, in
changelog_crawl\n return get_changes(brick, working_dir, log_file, start,
end, args)\n File "/usr/local/libexec/glusterfs/glusterfind/changelog.py",
line 355, in get_changes\n gfid_to_all_paths_using_gfid2path(brick,
changelog_data, args)\n File
"/usr/local/libexec/glusterfs/glusterfind/changelog.py", line 147, in
gfid_to_all_paths_using_gfid2path\n hardlinks =
enum_hard_links_using_gfid2path(brick, gfid, args)\n File
"/usr/local/libexec/glusterfs/glusterfind/changelog.py", line 123, in
enum_hard_links_using_gfid2path\n file_xattrs =
xattr.list(p)\nAttributeError: module \'xattr\' has no attribute \'list\'\n'
stderr:
b''
192.168.1.18 - pre failed; stdout (including remote stderr):
b'Connection to 192.168.1.18 closed.\r\n'
stderr:
b'Traceback (most recent call last):\r\n File
"/usr/local/libexec/glusterfs/glusterfind/changelog.py", line 458, in
<module>\r\n actual_end = changelog_crawl(args.brick, start, end, args)\r\n
File "/usr/local/libexec/glusterfs/glusterfind/changelog.py", line 392, in
changelog_crawl\r\n return get_changes(brick, working_dir, log_file, start,
end, args)\r\n File "/usr/local/libexec/glusterfs/glusterfind/changelog.py",
line 355, in get_changes\r\n gfid_to_all_paths_using_gfid2path(brick,
changelog_data, args)\r\n File
"/usr/local/libexec/glusterfs/glusterfind/changelog.py", line 147, in
gfid_to_all_paths_using_gfid2path\r\n hardlinks =
enum_hard_links_using_gfid2path(brick, gfid, args)\r\n File
"/usr/local/libexec/glusterfs/glusterfind/changelog.py", line 123, in
enum_hard_links_using_gfid2path\r\n file_xattrs =
xattr.list(p)\r\nAttributeError: module \'xattr\' has no attribute
\'list\'\r\n'
Generated output file /testxfs/output.txt
Actual results:
glusterfind pre command gives error
Expected results:
glusterfind pre command should not give error
Additional info:
--
You are receiving this mail because:
You are the QA Contact for the bug.
You are on the CC list for the bug.
You are the assignee for the bug.
More information about the Bugs
mailing list