#!/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 "$@"