1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
|
From 3fc74ce6c282f0f43fdcfeda47b71a1b19945b6d Mon Sep 17 00:00:00 2001
From: srijan-sivakumar <ssivakum@redhat.com>
Date: Wed, 3 Feb 2021 10:11:04 +0530
Subject: [PATCH 528/532] Extras: Removing xattr_analysis script
The xattr_analysis.py script is used rarely for
debugging and seeing that it has some dependencies,
removing it from the release.
If need be, it would be directly shared with the cu.
Label: DOWNSTREAM ONLY
BUG: 1719171
Change-Id: I4bb0df3ebfa7e43e13858b4b6e3efbb02ea79d5f
Signed-off-by: srijan-sivakumar <ssivakum@redhat.com>
Reviewed-on: https://code.engineering.redhat.com/gerrit/226301
Tested-by: RHGS Build Bot <nigelb@redhat.com>
Reviewed-by: Sunil Kumar Heggodu Gopala Acharya <sheggodu@redhat.com>
---
extras/quota/Makefile.am | 4 +--
extras/quota/xattr_analysis.py | 73 ------------------------------------------
glusterfs.spec.in | 1 -
3 files changed, 2 insertions(+), 76 deletions(-)
delete mode 100755 extras/quota/xattr_analysis.py
diff --git a/extras/quota/Makefile.am b/extras/quota/Makefile.am
index cdb6be1..e4d9322 100644
--- a/extras/quota/Makefile.am
+++ b/extras/quota/Makefile.am
@@ -2,7 +2,7 @@ scriptsdir = $(datadir)/glusterfs/scripts
scripts_SCRIPTS = log_accounting.sh
if WITH_SERVER
-scripts_SCRIPTS += xattr_analysis.py quota_fsck.py
+scripts_SCRIPTS += quota_fsck.py
endif
-EXTRA_DIST = log_accounting.sh xattr_analysis.py quota_fsck.py
+EXTRA_DIST = log_accounting.sh quota_fsck.py
diff --git a/extras/quota/xattr_analysis.py b/extras/quota/xattr_analysis.py
deleted file mode 100755
index 7bd7d96..0000000
--- a/extras/quota/xattr_analysis.py
+++ /dev/null
@@ -1,73 +0,0 @@
-#!/usr/bin/python3
-# Below script has two purposes
-# 1. Display xattr of entire FS tree in a human readable form
-# 2. Display all the directory where contri and size mismatch.
-# (If there are any directory with contri and size mismatch that are not dirty
-# then that highlights a propagation issue)
-# The script takes only one input LOG _FILE generated from the command,
-# find <brick_path> | xargs getfattr -d -m. -e hex > log_gluster_xattr
-
-from __future__ import print_function
-import re
-import subprocess
-import sys
-from hurry.filesize import size
-
-if len(sys.argv) < 2:
- sys.exit('Usage: %s log_gluster_xattr \n'
- 'to generate log_gluster_xattr use: \n'
- 'find <brick_path> | xargs getfattr -d -m. -e hex > log_gluster_xattr'
- % sys.argv[0])
-LOG_FILE=sys.argv[1]
-
-def get_quota_xattr_brick():
- out = subprocess.check_output (["/usr/bin/cat", LOG_FILE])
- pairs = out.splitlines()
-
- xdict = {}
- mismatch_size = [('====contri_size===', '====size====')]
- for xattr in pairs:
- k = xattr.split("=")[0]
- if re.search("# file:", k):
- print(xdict)
- filename=k
- print("=====" + filename + "=======")
- xdict = {}
- elif k is "":
- pass
- else:
- print(xattr)
- v = xattr.split("=")[1]
- if re.search("contri", k):
- if len(v) == 34:
- # for files size is obtained in iatt, file count should be 1, dir count=0
- xdict['contri_file_count'] = int(v[18:34], 16)
- xdict['contri_dir_count'] = 0
- else:
- xdict['contri_size'] = size(int(v[2:18], 16))
- xdict['contri_file_count'] = int(v[18:34], 16)
- xdict['contri_dir_count'] = int(v[34:], 16)
- elif re.search("size", k):
- xdict['size'] = size(int(v[2:18], 16))
- xdict['file_count'] = int(v[18:34], 16)
- xdict['dir_count'] = int(v[34:], 16)
- elif re.search("dirty", k):
- if v == '0x3000':
- xdict['dirty'] = False
- elif v == '0x3100':
- xdict['dirty'] = True
- elif re.search("limit_objects", k):
- xdict['limit_objects'] = int(v[2:18], 16)
- elif re.search("limit_set", k):
- xdict['limit_set'] = size(int(v[2:18], 16))
-
- if 'size' in xdict and 'contri_size' in xdict and xdict['size'] != xdict['contri_size']:
- mismatch_size.append((xdict['contri_size'], xdict['size'], filename))
-
- for values in mismatch_size:
- print(values)
-
-
-if __name__ == '__main__':
- get_quota_xattr_brick()
-
diff --git a/glusterfs.spec.in b/glusterfs.spec.in
index 30d7162..2be7677 100644
--- a/glusterfs.spec.in
+++ b/glusterfs.spec.in
@@ -1380,7 +1380,6 @@ exit 0
%if ( 0%{!?_without_server:1} )
%files server
%doc extras/clear_xattrs.sh
-%{_datadir}/glusterfs/scripts/xattr_analysis.py*
%{_datadir}/glusterfs/scripts/quota_fsck.py*
# sysconf
%config(noreplace) %{_sysconfdir}/glusterfs
--
1.8.3.1
|