diff options
author | Avra Sengupta <asengupt@redhat.com> | 2015-10-28 12:30:34 +0530 |
---|---|---|
committer | Rajesh Joseph <rjoseph@redhat.com> | 2015-11-02 22:38:05 -0800 |
commit | 1f74a3efbd0337759878ffff5cd4ee6782ddfe3f (patch) | |
tree | 8c1aeb500e30b0404081bd4d8a384abcce0122e9 /tests | |
parent | 2e56bde3ea952beabd27cdf8a3a10da563a00bcc (diff) |
snapshot: Inherit snap-max-hard-limit from original volume
A snapshot should inherit snap-max-hard-limit from the original
volume while being created and when being restored to, it should
restore the same.
Similarly a clone taken from a snapshot should inherit
snap-max-hard-limit from the snapshot.
Change-Id: If8e90e2ffc10e22086b803ac8e2638a16bcec968
BUG: 1275616
Signed-off-by: Avra Sengupta <asengupt@redhat.com>
Reviewed-on: http://review.gluster.org/12437
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: mohammed rafi kc <rkavunga@redhat.com>
Tested-by: NetBSD Build System <jenkins@build.gluster.org>
Reviewed-by: Rajesh Joseph <rjoseph@redhat.com>
Diffstat (limited to 'tests')
-rwxr-xr-x | tests/bugs/snapshot/bug-1275616.t | 48 | ||||
-rw-r--r-- | tests/snapshot.rc | 16 |
2 files changed, 64 insertions, 0 deletions
diff --git a/tests/bugs/snapshot/bug-1275616.t b/tests/bugs/snapshot/bug-1275616.t new file mode 100755 index 00000000000..fe1684ed003 --- /dev/null +++ b/tests/bugs/snapshot/bug-1275616.t @@ -0,0 +1,48 @@ +#!/bin/bash + +. $(dirname $0)/../../include.rc +. $(dirname $0)/../../snapshot.rc + +cleanup; +TEST verify_lvm_version; +TEST glusterd; +TEST pidof glusterd; + +TEST setup_lvm 1 + +TEST $CLI volume create $V0 $H0:$L1 +TEST $CLI volume start $V0 +TEST $CLI snapshot config activate-on-create enable + +TEST $CLI snapshot config $V0 snap-max-hard-limit 100 +TEST $CLI snapshot create snap1 $V0 no-timestamp + +TEST $CLI snapshot config $V0 snap-max-hard-limit 150 +TEST $CLI snapshot create snap2 $V0 no-timestamp + +TEST $CLI snapshot config $V0 snap-max-hard-limit 200 +TEST $CLI snapshot create snap3 $V0 no-timestamp +EXPECT '197' snap_info_volume CLI "Snaps Available" $V0; + +TEST $CLI volume stop $V0 + +# Restore the snapshots and verify the snap-max-hard-limit +# and the Snaps Available +TEST $CLI snapshot restore snap1 +EXPECT '98' snap_info_volume CLI "Snaps Available" $V0; +EXPECT '100' snap_config_volume CLI 'snap-max-hard-limit' $V0 + +TEST $CLI snapshot restore snap2 +EXPECT '149' snap_info_volume CLI "Snaps Available" $V0; +EXPECT '150' snap_config_volume CLI 'snap-max-hard-limit' $V0 + +#Take a clone and verify it inherits snapshot's snap-max-hard-limit +TEST $CLI snapshot clone clone1 snap3 + +EXPECT '149' snap_info_volume CLI "Snaps Available" $V0; +EXPECT '150' snap_config_volume CLI 'snap-max-hard-limit' $V0 + +EXPECT '200' snap_info_volume CLI "Snaps Available" clone1 +EXPECT '200' snap_config_volume CLI 'snap-max-hard-limit' clone1 + +cleanup; diff --git a/tests/snapshot.rc b/tests/snapshot.rc index 60e5b79ec76..34e9ebf16d8 100644 --- a/tests/snapshot.rc +++ b/tests/snapshot.rc @@ -431,6 +431,22 @@ function uss_count_snap_displayed() { ls $path/.snaps | wc -l } +function snap_info_volume() +{ + eval local cli_index=\$$1 + local var=$2 + local vol=$3 + $cli_index snapshot info volume $vol | grep "^$var" | sed 's/.*: //' +} + +function snap_config_volume() +{ + eval local cli_index=\$$1 + local var=$2 + local vol=$3 + $cli_index snapshot config $vol| grep "^$var" | sed 's/.*: //' +} + #return specific fields of xml output function get-cmd-field-xml() { |