summaryrefslogtreecommitdiffstats
path: root/tests/bugs
diff options
context:
space:
mode:
authorMohammed Rafi KC <rkavunga@redhat.com>2016-04-01 23:10:51 +0530
committerAtin Mukherjee <amukherj@redhat.com>2016-04-05 20:30:21 -0700
commit13f18e61e70218121991bd761ef37f17a89c7edb (patch)
tree79d0d73b4583785a1717d1805dd2e0bf2ee25c3e /tests/bugs
parentfcca19e8a24751a3a966c7c20a52da89928161e4 (diff)
glusterd: fill real_path variable in brickinfo during volume import
Variable "real_path" in brick info was used to store absolute path and using this we check the availability of the newly added bricks. But we were not populating the variable when we import a volume from peers. That caused to reset the real_path variable to zero, which resulted in validation failure for all new brick creation. Backport of> >Change-Id: I62be7bf452f0dcdf6aec3a4ec33c2e1fba2951ca >BUG: 1323287 >Signed-off-by: Mohammed Rafi KC <rkavunga@redhat.com> >Reviewed-on: http://review.gluster.org/13890 >Reviewed-by: Atin Mukherjee <amukherj@redhat.com> >Smoke: Gluster Build System <jenkins@build.gluster.com> >NetBSD-regression: NetBSD Build System <jenkins@build.gluster.org> >CentOS-regression: Gluster Build System <jenkins@build.gluster.com> (cherry picked from commit 648357ffad482a1bda8915d42df9d5b055dae44f) Change-Id: I6937f83bb50277a396944edc3cf0b0ed82facc3a BUG: 1324156 Signed-off-by: Mohammed Rafi KC <rkavunga@redhat.com> Reviewed-on: http://review.gluster.org/13914 Smoke: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Atin Mukherjee <amukherj@redhat.com> NetBSD-regression: NetBSD Build System <jenkins@build.gluster.org> CentOS-regression: Gluster Build System <jenkins@build.gluster.com>
Diffstat (limited to 'tests/bugs')
-rw-r--r--tests/bugs/glusterd/bug-1323287-real_path-handshake-test.t39
1 files changed, 39 insertions, 0 deletions
diff --git a/tests/bugs/glusterd/bug-1323287-real_path-handshake-test.t b/tests/bugs/glusterd/bug-1323287-real_path-handshake-test.t
new file mode 100644
index 00000000000..12b722bae36
--- /dev/null
+++ b/tests/bugs/glusterd/bug-1323287-real_path-handshake-test.t
@@ -0,0 +1,39 @@
+#!/bin/bash
+
+. $(dirname $0)/../../include.rc
+. $(dirname $0)/../../cluster.rc
+. $(dirname $0)/../../volume.rc
+
+function volume_get_field()
+{
+ local vol=$1
+ local field=$2
+ $CLI_2 volume get $vol $field | tail -1 | awk '{print $2}'
+}
+
+cleanup;
+TEST launch_cluster 2;
+TEST $CLI_1 peer probe $H2;
+
+EXPECT_WITHIN $PROBE_TIMEOUT 1 peer_count
+
+TEST $CLI_1 volume create $V0 $H1:$B1/$V0 $H2:$B2/$V0
+EXPECT 'Created' cluster_volinfo_field 1 $V0 'Status';
+
+TEST $CLI_1 volume start $V0
+EXPECT 'Started' cluster_volinfo_field 1 $V0 'Status';
+
+#kill glusterd2 and do a volume set command to change the version
+kill_glusterd 2
+
+TEST $CLI_1 volume set $V0 performance.write-behind off
+TEST start_glusterd 2;
+
+EXPECT_WITHIN $PROBE_TIMEOUT 1 peer_count
+
+#Check for handshake completion.
+EXPECT_WITHIN $PROBE_TIMEOUT 'off' volume_get_field $V0 'write-behind'
+
+#During hanndshake, if we failed to populate real_path,
+#then volume create will fail.
+TEST $CLI_1 volume create $V1 $H1:$B1/$V1 $H2:$B2/$V1