summaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
authorJoseph Fernandes <josferna@redhat.com>2014-04-21 20:28:22 +0530
committerVijay Bellur <vbellur@redhat.com>2014-04-30 23:27:23 -0700
commitf63fbca7540a4c9ce090e1ed5941ed8777ff6316 (patch)
treef342c9aa37cbbc45ebfa66f77daff25696eac569 /tests
parent57fddef768d0e0feee07e5d745dcb4656fe5cb84 (diff)
[glusterd/snapshot] snapshot create force option
Implement force option in snapshot create i.e 1) Creation of snapshot fails if the original volume bricks are down 2) With a force option creation of snapshot will continue even if the original volume bricks are down. This was the fix for bugs 1089527 and 1083502 Change-Id: I8de0242adf8ee0af00db9fa8701d86fabc12e7fc BUG: 1090042 Signed-off-by: Joseph Fernandes <josferna@redhat.com> Reviewed-on: http://review.gluster.org/7520 Reviewed-by: Atin Mukherjee <amukherj@redhat.com> Reviewed-by: Krishnan Parthasarathi <kparthas@redhat.com> Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Vijay Bellur <vbellur@redhat.com>
Diffstat (limited to 'tests')
-rwxr-xr-xtests/bugs/bug-1090042.t30
-rwxr-xr-xtests/snapshot.rc11
2 files changed, 41 insertions, 0 deletions
diff --git a/tests/bugs/bug-1090042.t b/tests/bugs/bug-1090042.t
new file mode 100755
index 00000000000..364d8b2d66b
--- /dev/null
+++ b/tests/bugs/bug-1090042.t
@@ -0,0 +1,30 @@
+#!/bin/bash
+
+. $(dirname $0)/../include.rc
+. $(dirname $0)/../volume.rc
+. $(dirname $0)/../snapshot.rc
+
+cleanup;
+
+TEST init_n_bricks 3;
+TEST setup_lvm 3;
+TEST glusterd;
+
+TEST $CLI volume create $V0 replica 3 $H0:$L1 $H0:$L2 $H0:$L3;
+TEST $CLI volume start $V0;
+
+TEST kill_brick $V0 $H0 $L1;
+
+#Normal snap create should fail
+TEST ! $CLI snapshot create ${V0}_snap1 $V0;
+TEST ! snapshot_exists 0 ${V0}_snap1;
+
+#Force snap create should succeed
+TEST $CLI snapshot create ${V0}_snap1 $V0 force;
+TEST snapshot_exists 0 ${V0}_snap1;
+
+#Delete the created snap
+TEST $CLI snapshot delete ${V0}_snap1;
+TEST ! snapshot_exists 0 ${V0}_snap1;
+
+cleanup;
diff --git a/tests/snapshot.rc b/tests/snapshot.rc
index 87ea0df9190..37c250344f1 100755
--- a/tests/snapshot.rc
+++ b/tests/snapshot.rc
@@ -5,6 +5,17 @@ LVM_PREFIX="patchy_snap"
LVM_COUNT=0
VHD_SIZE="1G"
+#This function will init B# bricks
+#This is used when launch_cluster is
+#not called to init B#. Call it before
+#setup_lvm
+function init_n_bricks() {
+ local count=$1
+ for i in `seq 1 $count`; do
+ eval "B$i=/d/backends/$i"
+ done
+}
+
function init_lvm() {
if [ "$1" == "" ]; then
echo "Error: Invalid argument supplied"