]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
qa: rename tests
authorSage Weil <sage.weil@dreamhost.com>
Tue, 7 Jun 2011 20:27:31 +0000 (13:27 -0700)
committerSage Weil <sage.weil@dreamhost.com>
Tue, 7 Jun 2011 20:27:31 +0000 (13:27 -0700)
Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
qa/mds/rename/all.sh [new file with mode: 0755]
qa/mds/rename/plan.txt [new file with mode: 0644]
qa/mds/rename/prepare.sh [new file with mode: 0755]
qa/mds/rename/pri_nul.sh [new file with mode: 0755]
qa/mds/rename/pri_pri.sh [new file with mode: 0755]
qa/mds/rename/pri_rem.sh [new file with mode: 0755]
qa/mds/rename/rem_nul.sh [new file with mode: 0755]
qa/mds/rename/rem_pri.sh [new file with mode: 0755]
qa/mds/rename/rem_rem.sh [new file with mode: 0755]

diff --git a/qa/mds/rename/all.sh b/qa/mds/rename/all.sh
new file mode 100755 (executable)
index 0000000..a5838c4
--- /dev/null
@@ -0,0 +1,20 @@
+#!/bin/bash -ex
+
+dir=`dirname $0`
+
+$dir/prepare.sh
+
+$dir/pri_nul.sh
+rm mnt/?/* || true
+
+$dir/rem_nul.sh
+rm mnt/?/* || true
+
+$dir/pri_pri.sh
+rm mnt/?/* || true
+
+$dir/rem_pri.sh
+rm mnt/?/* || true
+
+$dir/rem_rem.sh
+rm mnt/?/* || true
diff --git a/qa/mds/rename/plan.txt b/qa/mds/rename/plan.txt
new file mode 100644 (file)
index 0000000..b423b41
--- /dev/null
@@ -0,0 +1,111 @@
+#!/bin/sh
+
+# srcdn         destdn        targeti
+
+## pri auth      null auth     -
+## pri rep       null auth     -
+## rem auth      null auth     -
+## rem rep       null auth     -
+
+#/ pri auth      null rep      - dup of pr_na
+#/ pri rep       null rep      -
+#/ rem auth      null rep      - dup of rr_na
+#/ rem rep       null rep      -
+
+
+## pri auth      pri auth      -
+# pri rep       pri auth      -
+## rem auth      pri auth      -
+# rem rep       pri auth      -
+
+# pri auth      pri rep       -
+# pri rep       pri rep       -
+# rem auth      pri rep       -
+# rem rep       pri rep       -
+
+## pri auth      rem auth      auth
+# pri rep       rem auth      auth
+## rem auth      rem auth      auth
+# rem rep       rem auth      auth
+
+# pri auth      rem rep       auth
+# pri rep       rem rep       auth
+# rem auth      rem rep       auth
+# rem rep       rem rep       auth
+
+# pri auth      rem auth      rep
+# pri rep       rem auth      rep
+# rem auth      rem auth      rep
+# rem rep       rem auth      rep
+
+# pri auth      rem rep       rep
+# pri rep       rem rep       rep
+# rem auth      rem rep       rep
+# rem rep       rem rep       rep
+
+
+types of operations
+
+pri  nul
+  srcdn=destdn
+  diff
+
+rem  nul
+  srci=srcdn=destdn
+  srci=srcdn
+  srcdn=destdn
+  srci=destdn
+  all different
+
+pri  pri
+  srcdn=destdn
+  different
+
+rem  pri
+  srci=srcdn=destdn
+  srci=srcdn
+  srcdn=destdn
+  srci=destdn
+  all different
+
+pri  rem
+  srcdn=destdn=desti
+  srcdn=destdn
+  destdn=desti
+  srcdn=desti
+  all different
+
+rem  rem
+  srci=srcdn=destdn=desti
+  srci=srcdn=destdn
+  srci=srcdn=desti
+  srci=destdn=desti
+  srcdni=destdn=desti
+  srci=srcdn destdn=desti
+  srci=destdn srcdn=desti
+  srci=desti srcdn=destdn
+  srci=srcdn
+  srci=destdn
+  srci=desti
+  srcdn=destdn
+  srcdn=desti
+  destdn=desti
+  all different
+
+
+
+
+
+
+
+
+
+p   n   same
+r   n   same
+p   n   diff
+r   n   diff
+
+p   p   same
+r   p   same
+
+p   r   
diff --git a/qa/mds/rename/prepare.sh b/qa/mds/rename/prepare.sh
new file mode 100755 (executable)
index 0000000..4838fbc
--- /dev/null
@@ -0,0 +1,18 @@
+#!/bin/sh -ex
+
+./ceph mds tell 0 injectargs '--mds-bal-interval 0'
+./ceph mds tell 1 injectargs '--mds-bal-interval 0'
+./ceph mds tell 2 injectargs '--mds-bal-interval 0'
+./ceph mds tell 3 injectargs '--mds-bal-interval 0'
+#./ceph mds tell 4 injectargs '--mds-bal-interval 0'
+
+mkdir -p mnt/a/a
+mkdir -p mnt/b/b
+mkdir -p mnt/c/c
+mkdir -p mnt/d/d
+
+./ceph mds tell 0 export_dir /b 1
+./ceph mds tell 0 export_dir /c 2
+./ceph mds tell 0 export_dir /d 3
+sleep 5
+
diff --git a/qa/mds/rename/pri_nul.sh b/qa/mds/rename/pri_nul.sh
new file mode 100755 (executable)
index 0000000..42743b8
--- /dev/null
@@ -0,0 +1,11 @@
+#!/bin/sh -ex
+
+touch mnt/a/file1
+touch mnt/a/file2
+
+# srcdn=destdn
+mv mnt/a/file1 mnt/a/file1.renamed
+
+# different
+mv mnt/a/file2 mnt/b
+
diff --git a/qa/mds/rename/pri_pri.sh b/qa/mds/rename/pri_pri.sh
new file mode 100755 (executable)
index 0000000..c5c550c
--- /dev/null
@@ -0,0 +1,13 @@
+#!/bin/sh -ex
+
+touch mnt/a/file1
+touch mnt/a/file2
+touch mnt/a/file3
+touch mnt/b/file4
+
+# srcdn=destdn
+mv mnt/a/file1 mnt/a/file2
+
+# different (srcdn != destdn)
+mv mnt/a/file3 mnt/b/file4
+
diff --git a/qa/mds/rename/pri_rem.sh b/qa/mds/rename/pri_rem.sh
new file mode 100755 (executable)
index 0000000..f4daecb
--- /dev/null
@@ -0,0 +1,31 @@
+#!/bin/sh -ex
+
+dotest() {
+    src=$1
+    desti=$2
+    destdn=$3
+    n=$4
+
+    touch mnt/$src/src$n
+    touch mnt/$desti/desti$n
+    ln mnt/$desti/desti$n mnt/$destdn/destdn$n
+
+    mv mnt/$src/src$n mnt/$destdn/destdn$n
+}
+
+
+# srcdn=destdn=desti
+dotest 'a' 'a' 'a' 1
+
+# destdn=desti
+dotest 'b' 'a' 'a' 2
+
+# srcdn=destdn
+dotest 'a' 'b' 'a' 3
+
+# srcdn=desti
+dotest 'a' 'a' 'b' 4
+
+# all different
+dotest 'a' 'b' 'c' 5
+
diff --git a/qa/mds/rename/rem_nul.sh b/qa/mds/rename/rem_nul.sh
new file mode 100755 (executable)
index 0000000..4b07fcc
--- /dev/null
@@ -0,0 +1,29 @@
+#!/bin/sh -ex
+
+dotest() {
+    srci=$1
+    srcdn=$2
+    dest=$3
+    n=$4
+
+    touch mnt/$srci/srci$n
+    ln mnt/$srci/srci$n mnt/$srcdn/srcdn$n
+
+    mv mnt/$srcdn/srcdn$n mnt/$dest/dest$n
+}
+
+# srci=srcdn=destdn
+dotest 'a' 'a' 'a' 1
+
+# srcdn=destdn
+dotest 'b' 'a' 'a' 2
+
+# srci=destdn
+dotest 'a' 'b' 'a' 3
+
+# srci=srcdn
+dotest 'a' 'a' 'b' 4
+
+# all different
+dotest 'a' 'b' 'c' 5
+
diff --git a/qa/mds/rename/rem_pri.sh b/qa/mds/rename/rem_pri.sh
new file mode 100755 (executable)
index 0000000..6f42140
--- /dev/null
@@ -0,0 +1,29 @@
+#!/bin/sh -ex
+
+dotest() {
+    srci=$1
+    srcdn=$2
+    dest=$3
+    n=$4
+
+    touch mnt/$srci/srci$n
+    ln mnt/$srci/srci$n mnt/$srcdn/srcdn$n
+    touch mnt/$dest/dest$n
+
+    mv mnt/$srcdn/srcdn$n mnt/$dest/dest$n
+}
+
+# srci=srcdn=destdn
+dotest 'a' 'a' 'a' 1
+
+# srcdn=destdn
+dotest 'b' 'a' 'a' 2
+
+# srci=destdn
+dotest 'a' 'b' 'a' 3
+
+# srci=srcdn
+dotest 'a' 'a' 'b' 4
+
+# all different
+dotest 'a' 'b' 'c' 5
diff --git a/qa/mds/rename/rem_rem.sh b/qa/mds/rename/rem_rem.sh
new file mode 100755 (executable)
index 0000000..d4f0962
--- /dev/null
@@ -0,0 +1,61 @@
+#!/bin/sh -ex
+
+dotest() {
+    srci=$1
+    srcdn=$2
+    desti=$3
+    destdn=$4
+    n=$5
+
+    touch mnt/$srci/srci$n
+    ln mnt/$srci/srci$n mnt/$srcdn/srcdn$n
+    touch mnt/$desti/desti$n
+    ln mnt/$desti/desti$n mnt/$destdn/destdn$n
+
+    mv mnt/$srcdn/srcdn$n mnt/$destdn/destdn$n
+}
+
+#  srci=srcdn=destdn=desti
+dotest 'a' 'a' 'a' 'a' 1
+
+#  srcdn=destdn=desti
+dotest 'b' 'a' 'a' 'a' 2
+
+#  srci=destdn=desti
+dotest 'a' 'b' 'a' 'a' 3
+
+#  srci=srcdn=destdn
+dotest 'a' 'a' 'b' 'a' 4
+
+#  srci=srcdn=desti
+dotest 'a' 'a' 'a' 'b' 5
+
+#  srci=srcdn destdn=desti
+dotest 'a' 'a' 'b' 'b' 6
+
+#  srci=destdn srcdn=desti
+dotest 'a' 'b' 'b' 'a' 7
+
+#  srci=desti srcdn=destdn
+dotest 'a' 'b' 'a' 'b' 8
+
+#  srci=srcdn
+dotest 'a' 'a' 'b' 'c' 9
+
+#  srci=desti
+dotest 'a' 'b' 'a' 'c' 10
+
+#  srci=destdn
+dotest 'a' 'b' 'c' 'a' 11
+
+#  srcdn=desti
+dotest 'a' 'b' 'b' 'c' 12
+
+#  srcdn=destdn
+dotest 'a' 'b' 'c' 'b' 13
+
+#  destdn=desti
+dotest 'a' 'b' 'c' 'c' 14
+
+#  all different
+dotest 'a' 'b' 'c' 'd' 15