summaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
authorvmallika <vmallika@redhat.com>2014-11-20 20:36:00 +0530
committerVijay Bellur <vbellur@redhat.com>2014-11-25 22:26:04 -0800
commit8277f4e4a4e92543ac139ef63d0ad82add397de7 (patch)
treed237c8180e6b6e0e962347683f1575739060563c /tests
parentff9ffab7b4e991de6191f10909c32a7a08f20ada (diff)
gluster/uss: Handle ESTALE in snapview client when NFS server restarted
When NFS server is restarted inode-context is lost. Nameless lookup will be sent to regular volume. If the gfid is from virtual graph, lookup will fail with ESTALE. We need to send a lookup to snapview server Change-Id: I22920614f0d14cb90b53653fce95b6b70023eba6 BUG: 1166197 Signed-off-by: vmallika <vmallika@redhat.com> Reviewed-on: http://review.gluster.org/9153 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Sachin Pandit <spandit@redhat.com> Reviewed-by: Vijay Bellur <vbellur@redhat.com>
Diffstat (limited to 'tests')
-rw-r--r--tests/bugs/bug-1164613.t7
-rwxr-xr-xtests/bugs/bug-1166197.t48
-rw-r--r--tests/include.rc6
3 files changed, 55 insertions, 6 deletions
diff --git a/tests/bugs/bug-1164613.t b/tests/bugs/bug-1164613.t
index 1942dcbc628..b7b27f1d649 100644
--- a/tests/bugs/bug-1164613.t
+++ b/tests/bugs/bug-1164613.t
@@ -3,11 +3,6 @@
. $(dirname $0)/../include.rc
. $(dirname $0)/../snapshot.rc
-function stat_testfile() {
- stat $M0/snaps/snaps/testfile
- echo $?
-}
-
cleanup;
TEST verify_lvm_version;
TEST glusterd;
@@ -26,7 +21,7 @@ TEST $CLI snapshot activate snaps
TEST $CLI volume set $V0 features.uss enable
TEST $CLI volume set $V0 snapshot-directory snaps
-EXPECT_WITHIN 20 "0" stat_testfile
+EXPECT_WITHIN $PROCESS_UP_TIMEOUT "0" STAT $M0/snaps/snaps/testfile
umount -f $M0
diff --git a/tests/bugs/bug-1166197.t b/tests/bugs/bug-1166197.t
new file mode 100755
index 00000000000..a1e2480d62b
--- /dev/null
+++ b/tests/bugs/bug-1166197.t
@@ -0,0 +1,48 @@
+#!/bin/bash
+
+. $(dirname $0)/../include.rc
+. $(dirname $0)/../snapshot.rc
+. $(dirname $0)/../volume.rc
+. $(dirname $0)/../nfs.rc
+
+cleanup;
+CURDIR=`pwd`
+
+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 volume set $V0 features.uss enable
+
+EXPECT_WITHIN $PROCESS_UP_TIMEOUT 'Started' volinfo_field $V0 'Status';
+TEST mount_nfs $H0:/$V0 $N0 nolock
+TEST mkdir $N0/testdir
+
+TEST $CLI snapshot create snap1 $V0
+TEST $CLI snapshot create snap2 $V0
+
+EXPECT_WITHIN $PROCESS_UP_TIMEOUT "0" STAT $N0/testdir/.snaps
+
+TEST cd $N0/testdir
+TEST cd .snaps
+TEST ls
+
+TEST $CLI snapshot deactivate snap2
+TEST ls
+
+TEST cd $CURDIR
+
+#Clean up
+EXPECT_WITHIN $UMOUNT_TIMEOUT "Y" umount_nfs $N0
+TEST $CLI snapshot delete snap1
+TEST $CLI snapshot delete snap2
+TEST $CLI volume stop $V0 force
+TEST $CLI volume delete $V0
+
+cleanup;
+
diff --git a/tests/include.rc b/tests/include.rc
index 000005a4e33..dc6fc6e25dc 100644
--- a/tests/include.rc
+++ b/tests/include.rc
@@ -826,3 +826,9 @@ function UMOUNT_LOOP ()
;;
esac
}
+
+function STAT()
+{
+ stat $1
+ echo $?
+}