diff options
| author | Pranith Kumar K <pkarampu@redhat.com> | 2013-01-11 17:37:10 +0530 | 
|---|---|---|
| committer | Anand Avati <avati@redhat.com> | 2013-02-03 11:34:55 -0800 | 
| commit | 5c01280de7ce1a5f4608c7d6b5f6b4fcbf68523e (patch) | |
| tree | 6918151380206d1bb964de9a2e859e8d220eddbb | |
| parent | 04e673f14e31c60e4c9cde9072bcec610fe3884b (diff) | |
tests: Added util functions
Added functions to extract gfid, gfid-str
function to check if a file is open
deleting gfid-link of a file
Change-Id: If2f39f43a6631cddb68b4ba7febcd3cf66f399ee
BUG: 821056
Signed-off-by: Pranith Kumar K <pkarampu@redhat.com>
Reviewed-on: http://review.gluster.org/4386
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Anand Avati <avati@redhat.com>
| -rw-r--r-- | tests/volume.rc | 56 | 
1 files changed, 50 insertions, 6 deletions
diff --git a/tests/volume.rc b/tests/volume.rc index e8dd2eeb778..2a2b32744ac 100644 --- a/tests/volume.rc +++ b/tests/volume.rc @@ -90,13 +90,19 @@ function glustershd_up_status {          gluster volume status | grep "Self-heal Daemon" | awk '{print $6}'  } -function kill_brick() -{ -        local vol=$1 -        local host=$2 -        local brick=$3 +function get_brick_pid { +        vol=$1 +        host=$2 +        brick=$3          brick_hiphenated=$(echo $brick | tr '/' '-') -        kill -9 `cat /var/lib/glusterd/vols/$vol/run/${host}${brick_hiphenated}.pid` +        echo `cat /var/lib/glusterd/vols/$vol/run/${host}${brick_hiphenated}.pid` +} + +function kill_brick { +        vol=$1 +        host=$2 +        brick=$3 +        kill -9 $(get_brick_pid $vol $host $brick)  }  function check_option_help_presence { @@ -124,3 +130,41 @@ function afr_get_num_indices_in_brick {          local brick_path=$1          echo $(ls $(afr_get_index_path $brick_path) | grep -v xattrop | wc -l)  } + +function gf_get_gfid_xattr { +        file=$1 +        getfattr -n trusted.gfid -e hex $file 2>/dev/null | grep "trusted.gfid" | cut -f2 -d'=' +} + +function gf_gfid_xattr_to_str { +        xval=$1 +        echo "${xval:2:8}-${xval:10:4}-${xval:14:4}-${xval:18:4}-${xval:22:12}" +} + +function gf_check_file_opened_in_brick { +        vol=$1 +        host=$2 +        brick=$3 +        realpath=$4 +        ls -l /proc/$(get_brick_pid $vol $host $brick)/fd | grep "${realpath}$" 2>&1 > /dev/null +        if [ $? -eq 0 ]; then +                echo "Y" +        else +                echo "N" +        fi +} + +function gf_get_gfid_backend_file_path { +        brickpath=$1 +        filepath_in_brick=$2 +        gfid=$(gf_get_gfid_xattr "$brickpath/$filepath_in_brick") +        gfidstr=$(gf_gfid_xattr_to_str $gfid) +        echo "$brickpath/.glusterfs/${gfidstr:0:2}/${gfidstr:2:2}/$gfidstr" +} + +function gf_rm_file_and_gfid_link { +        brickpath=$1 +        filepath_in_brick=$2 +        rm -f $(gf_get_gfid_backend_file_path $brickpath $filepath_in_brick) +        rm -f "$brickpath/$filepath_in_brick" +}  | 
