Blame SPECS/0125-glusterd-define-dumpops-in-the-xlator_api-of-gluster.patch

Packit Service 89bf3d
From 0cd08d9e89f5ee86d5f4f90f0ca5c07bd290636c Mon Sep 17 00:00:00 2001
Packit Service 89bf3d
From: Sanju Rakonde <srakonde@redhat.com>
Packit Service 89bf3d
Date: Fri, 26 Apr 2019 22:28:53 +0530
Packit Service 89bf3d
Subject: [PATCH 125/141] glusterd: define dumpops in the xlator_api of
Packit Service 89bf3d
 glusterd
Packit Service 89bf3d
Packit Service 89bf3d
Problem: statedump is not capturing information related to glusterd
Packit Service 89bf3d
Packit Service 89bf3d
Solution: statdump is not capturing glusterd info because
Packit Service 89bf3d
trav->dumpops is null in gf_proc_dump_single_xlator_info ()
Packit Service 89bf3d
where trav is glusterd xlator object. trav->dumpops is null
Packit Service 89bf3d
because we missed to define dumpops in xlator_api of glusterd.
Packit Service 89bf3d
defining dumpops in xlator_api of glusterd fixes the issue.
Packit Service 89bf3d
Packit Service 89bf3d
> fixes: bz#1703629
Packit Service 89bf3d
> Change-Id: If85429ecb1ef580aced8d5b88d09fc15258bfc4c
Packit Service 89bf3d
> Signed-off-by: Sanju Rakonde <srakonde@redhat.com>
Packit Service 89bf3d
Packit Service 89bf3d
upstream patch: https://review.gluster.org/#/c/glusterfs/+/22640/
Packit Service 89bf3d
Packit Service 89bf3d
BUG: 1703753
Packit Service 89bf3d
Change-Id: If85429ecb1ef580aced8d5b88d09fc15258bfc4c
Packit Service 89bf3d
Signed-off-by: Sanju Rakonde <srakonde@redhat.com>
Packit Service 89bf3d
Reviewed-on: https://code.engineering.redhat.com/gerrit/169207
Packit Service 89bf3d
Tested-by: RHGS Build Bot <nigelb@redhat.com>
Packit Service 89bf3d
Reviewed-by: Atin Mukherjee <amukherj@redhat.com>
Packit Service 89bf3d
---
Packit Service 89bf3d
 tests/bugs/glusterd/optimized-basic-testcases.t | 13 +++++++++++++
Packit Service 89bf3d
 xlators/mgmt/glusterd/src/glusterd.c            |  1 +
Packit Service 89bf3d
 2 files changed, 14 insertions(+)
Packit Service 89bf3d
Packit Service 89bf3d
diff --git a/tests/bugs/glusterd/optimized-basic-testcases.t b/tests/bugs/glusterd/optimized-basic-testcases.t
Packit Service 89bf3d
index dd98a65..d700b5e 100644
Packit Service 89bf3d
--- a/tests/bugs/glusterd/optimized-basic-testcases.t
Packit Service 89bf3d
+++ b/tests/bugs/glusterd/optimized-basic-testcases.t
Packit Service 89bf3d
@@ -32,6 +32,16 @@ function get_brick_host_uuid()
Packit Service 89bf3d
     echo $host_uuid_list | awk '{print $1}'
Packit Service 89bf3d
 }
Packit Service 89bf3d
 
Packit Service 89bf3d
+function generate_statedump_and_check_for_glusterd_info {
Packit Service 89bf3d
+        pid=`pidof glusterd`
Packit Service 89bf3d
+        #remove old stale statedumps
Packit Service 89bf3d
+        cleanup_statedump $pid
Packit Service 89bf3d
+        kill -USR1 $pid
Packit Service 89bf3d
+        #Wait till the statedump is generated
Packit Service 89bf3d
+        sleep 1
Packit Service 89bf3d
+        fname=$(ls $statedumpdir | grep -E "\.$pid\.dump\.")
Packit Service 89bf3d
+        cat $statedumpdir/$fname | grep "xlator.glusterd.priv" | wc -l
Packit Service 89bf3d
+}
Packit Service 89bf3d
 
Packit Service 89bf3d
 cleanup;
Packit Service 89bf3d
 
Packit Service 89bf3d
@@ -279,4 +289,7 @@ mkdir -p /xyz/var/lib/glusterd/abc
Packit Service 89bf3d
 TEST  $CLI volume create "test" $H0:/xyz/var/lib/glusterd/abc
Packit Service 89bf3d
 EXPECT 'Created' volinfo_field "test" 'Status';
Packit Service 89bf3d
 
Packit Service 89bf3d
+EXPECT "1" generate_statedump_and_check_for_glusterd_info
Packit Service 89bf3d
+
Packit Service 89bf3d
+cleanup_statedump `pidof glusterd`
Packit Service 89bf3d
 cleanup
Packit Service 89bf3d
diff --git a/xlators/mgmt/glusterd/src/glusterd.c b/xlators/mgmt/glusterd/src/glusterd.c
Packit Service 89bf3d
index d4ab630..c0973cb 100644
Packit Service 89bf3d
--- a/xlators/mgmt/glusterd/src/glusterd.c
Packit Service 89bf3d
+++ b/xlators/mgmt/glusterd/src/glusterd.c
Packit Service 89bf3d
@@ -2231,6 +2231,7 @@ xlator_api_t xlator_api = {
Packit Service 89bf3d
     .fini = fini,
Packit Service 89bf3d
     .mem_acct_init = mem_acct_init,
Packit Service 89bf3d
     .op_version = {1}, /* Present from the initial version */
Packit Service 89bf3d
+    .dumpops = &dumpops,
Packit Service 89bf3d
     .fops = &fops,
Packit Service 89bf3d
     .cbks = &cbks,
Packit Service 89bf3d
     .options = options,
Packit Service 89bf3d
-- 
Packit Service 89bf3d
1.8.3.1
Packit Service 89bf3d