From 7997d36ce3d37b0b3ac33c1529f03969442b6595 Mon Sep 17 00:00:00 2001 From: Raghavendra Bhat Date: Thu, 9 Aug 2012 17:09:19 +0530 Subject: xlator/fuse: integrate fuse with event-history use event-history framework for saving and dumping (on necessity) important xlator specific information. Tests: Included the regression testcase. Change-Id: I6c0532e9ffe0b624286cdc4d2637b1bd2c0579e0 BUG: 858215 Signed-off-by: Raghavendra Bhat Signed-off-by: root Signed-off-by: Raghavendra Bhat Reviewed-on: http://review.gluster.org/3925 Tested-by: Gluster Build System Reviewed-by: Vijay Bellur --- tests/bugs/bug-858215.t | 81 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 81 insertions(+) create mode 100755 tests/bugs/bug-858215.t (limited to 'tests/bugs') diff --git a/tests/bugs/bug-858215.t b/tests/bugs/bug-858215.t new file mode 100755 index 000000000..c93ff8b97 --- /dev/null +++ b/tests/bugs/bug-858215.t @@ -0,0 +1,81 @@ +#!/bin/bash + +. $(dirname $0)/../include.rc + +cleanup; + + +## Start and create a volume +TEST glusterd; +TEST pidof glusterd +TEST $CLI volume info; + +TEST $CLI volume create $V0 replica 2 stripe 2 $H0:$B0/${V0}{1,2,3,4,5,6,7,8}; + +function volinfo_field() +{ + local vol=$1; + local field=$2; + + $CLI volume info $vol | grep "^$field: " | sed 's/.*: //'; +} + + +## Verify volume is is created +EXPECT "$V0" volinfo_field $V0 'Volume Name'; +EXPECT 'Created' volinfo_field $V0 'Status'; + + +## Start volume and verify +TEST $CLI volume start $V0; +EXPECT 'Started' volinfo_field $V0 'Status'; + +## Mount FUSE with caching disabled +TEST glusterfs --entry-timeout=0 --attribute-timeout=0 -s $H0 --volfile-id $V0 $M0; + +## Wait for volume to register with rpc.mountd +sleep 5; + +## Test for checking whether the fops have been saved in the event-history +TEST ! stat $M0/newfile; +TEST touch $M0/newfile; +TEST stat $M0/newfile; +TEST rm $M0/newfile; + +nfs_pid=$(cat /var/lib/glusterd/nfs/run/nfs.pid); +glustershd_pid=$(cat /var/lib/glusterd/glustershd/run/glustershd.pid); + +pids=$(pidof glusterfs); +for i in $pids +do + if [ $i -ne $nfs_pid ] && [ $i -ne $glustershd_pid ]; then + mount_pid=$i; + break; + fi +done + +dump_dir='/tmp/gerrit_glusterfs' +cat >/tmp/glusterdump.options <