summaryrefslogtreecommitdiffstats
path: root/dvm/2567/testcase
diff options
context:
space:
mode:
Diffstat (limited to 'dvm/2567/testcase')
-rwxr-xr-xdvm/2567/testcase60
1 files changed, 60 insertions, 0 deletions
diff --git a/dvm/2567/testcase b/dvm/2567/testcase
new file mode 100755
index 0000000..3ab7262
--- /dev/null
+++ b/dvm/2567/testcase
@@ -0,0 +1,60 @@
+#!/bin/bash
+
+function _init ()
+{
+ source $cwd/regression_helpers
+}
+
+function self_heal ()
+{
+ $GLUSTERFSDIR/gluster volume create $global_bug_id replica 2 $(hostname):$EXPORT_DIR/$global_bug_id/export1 $(hostname):$EXPORT_DIR/$global_bug_id/export2 2>/dev/null 1>/dev/null
+
+ $GLUSTERFSDIR/gluster volume start $global_bug_id 2>/dev/null 1>/dev/null;
+
+ mount_glusterfs $global_bug_id;
+
+ for i in $(ls /etc/glusterd/vols/$global_bug_id/run)
+ do
+ pid=$(cat /etc/glusterd/vols/$global_bug_id/run/$i);
+ kill -KILL $pid;
+ break;
+ done
+
+ sleep 1;
+
+ mknod $FUSE_MOUNT/file c 2 2;
+
+ $GLUSTERFSDIR/gluster volume start $global_bug_id force 2>/dev/null 1>/dev/null;
+ sleep 3;
+ df -h 2>/dev/null 1>/dev/null
+
+ ls -l $FUSE_MOUNT/file 2>/dev/null 1>/dev/null;
+ stat $FUSE_MOUNT/file 2>/dev/null 1>/dev/null;
+
+ sleep 2;
+}
+
+function main ()
+{
+ self_heal;
+
+ hex_major1=$(stat --printf=%t $EXPORT_DIR/$global_bug_id/export1/file);
+ hex_minor1=$(stat --printf=%t $EXPORT_DIR/$global_bug_id/export1/file);
+
+ hex_major2=$(stat --printf=%t $EXPORT_DIR/$global_bug_id/export2/file);
+ hex_minor2=$(stat --printf=%t $EXPORT_DIR/$global_bug_id/export2/file);
+
+ dec_major1=$(printf "%d" 0x$hex_major1);
+ dec_minor1=$(printf "%d" 0x$hex_minor1);
+
+ dec_major2=$(printf "%d" 0x$hex_major2);
+ dec_minor2=$(printf "%d" 0x$hex_minor2);
+
+ if [ $dec_major1 -ne $dec_major2 ] || [ $dec_minor1 -ne $dec_minor2 ]; then
+ exit 1;
+ else
+ exit 0;
+ fi
+}
+
+_init && main "$@"