Blob Blame History Raw
From 1847ef315cf4bb47de13c2a30cb32b9cae64c613 Mon Sep 17 00:00:00 2001
From: anand <anekkunt@redhat.com>
Date: Wed, 18 Nov 2015 16:13:46 +0530
Subject: [PATCH 25/26] glusterd: fix info file checksum mismatch during upgrade

peers are  moving rejected state when upgrading from RHS2.1 to RHGS3.1.2 due to checksum
mismatch.

Label: DOWNSTREAM ONLY

Change-Id: Ifea6b7dfe8477c7f17eefc5ca87ced58aaa21c84
BUG: 1283035
Signed-off-by: anand <anekkunt@redhat.com>
Reviewed-on: https://code.engineering.redhat.com/gerrit/61774
Reviewed-by: Atin Mukherjee <amukherj@redhat.com>
Tested-by: Atin Mukherjee <amukherj@redhat.com>
---
 xlators/mgmt/glusterd/src/glusterd-store.c |   21 ++++++++++++---------
 1 files changed, 12 insertions(+), 9 deletions(-)

diff --git a/xlators/mgmt/glusterd/src/glusterd-store.c b/xlators/mgmt/glusterd/src/glusterd-store.c
index ef12d42..9a2420f 100644
--- a/xlators/mgmt/glusterd/src/glusterd-store.c
+++ b/xlators/mgmt/glusterd/src/glusterd-store.c
@@ -1005,16 +1005,19 @@ glusterd_volume_exclude_options_write (int fd, glusterd_volinfo_t *volinfo)
                         goto out;
         }
 
-        snprintf (buf, sizeof (buf), "%d", volinfo->op_version);
-        ret = gf_store_save_value (fd, GLUSTERD_STORE_KEY_VOL_OP_VERSION, buf);
-        if (ret)
-                goto out;
+        if (conf->op_version >= GD_OP_VERSION_RHS_3_0) {
+                snprintf (buf, sizeof (buf), "%d", volinfo->op_version);
+                ret = gf_store_save_value (fd, GLUSTERD_STORE_KEY_VOL_OP_VERSION, buf);
+                if (ret)
+                        goto out;
+
+                snprintf (buf, sizeof (buf), "%d", volinfo->client_op_version);
+                ret = gf_store_save_value (fd, GLUSTERD_STORE_KEY_VOL_CLIENT_OP_VERSION,
+                                           buf);
+                if (ret)
+                        goto out;
+        }
 
-        snprintf (buf, sizeof (buf), "%d", volinfo->client_op_version);
-        ret = gf_store_save_value (fd, GLUSTERD_STORE_KEY_VOL_CLIENT_OP_VERSION,
-                                   buf);
-        if (ret)
-                goto out;
         if (volinfo->caps) {
                 snprintf (buf, sizeof (buf), "%d", volinfo->caps);
                 ret = gf_store_save_value (fd, GLUSTERD_STORE_KEY_VOL_CAPS,
-- 
1.7.1