]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
mgr/stats: fetches client_metadata for multiple filesystems.
authorNeeraj Pratap Singh <neesingh@redhat.com>
Thu, 17 Mar 2022 04:33:58 +0000 (10:03 +0530)
committerNeeraj Pratap Singh <neesingh@redhat.com>
Wed, 18 May 2022 09:22:24 +0000 (14:52 +0530)
Signed-off-by: Neeraj Pratap Singh <neesingh@redhat.com>
(cherry picked from commit 5a1c4875c1b95248c050fb1f6aff48af4553156d)

src/pybind/mgr/stats/fs/perf_stats.py

index 13d2adc8fc1dac596798d355d5ba2187282fabd3..fcabeaf74c41142ba0e68b8ddf7f58729392fcbd 100644 (file)
@@ -181,12 +181,16 @@ class FSPerfStats(object):
         new_updates = {}
         pending_updates = [v[0] for v in self.client_metadata['in_progress'].values()]
         with self.meta_lock:
-            for rank in rank_set:
-                if rank in pending_updates:
-                    continue
-                tag = str(uuid.uuid4())
-                result = CommandResult(tag)
-                new_updates[tag] = (rank, result)
+            fsmap = self.module.get('fs_map')
+            for fs in fsmap['filesystems']:
+                mdsmap = fs['mdsmap']
+                for rank in rank_set:
+                    gid = mdsmap['up']["mds_{0}".format(rank)]
+                    if gid in pending_updates:
+                        continue                
+                    tag = str(uuid.uuid4())
+                    result = CommandResult(tag)
+                    new_updates[tag] = (gid, result)
             self.client_metadata['in_progress'].update(new_updates)
 
         self.log.debug("updating client metadata from {0}".format(new_updates))