diff options
| author | N Balachandran <nbalacha@redhat.com> | 2015-10-20 22:23:17 +0530 | 
|---|---|---|
| committer | Dan Lambright <dlambrig@redhat.com> | 2015-10-21 19:47:39 -0700 | 
| commit | 594a03b030577bf0ed6960199e920cc5fa7e7afc (patch) | |
| tree | 2c99babdb9efe4604b6deed5f4ff7fd05220b3cf /tests | |
| parent | 36974c36fa4231df3f0e9428a9da6d1aa33348ab (diff) | |
tests/tier:  Move common functions to tier.rc
Move common functions in tier .t files to tier.rc
Change-Id: Ibc312d987be9d93e7cc7fc47d0bf598bb1c944c2
BUG: 1272319
Signed-off-by: N Balachandran <nbalacha@redhat.com>
Reviewed-on: http://review.gluster.org/12404
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Dan Lambright <dlambrig@redhat.com>
Tested-by: Dan Lambright <dlambrig@redhat.com>
Diffstat (limited to 'tests')
| -rwxr-xr-x | tests/basic/tier/bug-1214222-directories_missing_after_attach_tier.t (renamed from tests/basic/tier/bug-1214222-directories_miising_after_attach_tier.t) | 18 | ||||
| -rwxr-xr-x | tests/basic/tier/fops-during-migration.t | 11 | ||||
| -rw-r--r-- | tests/basic/tier/legacy-many.t | 67 | ||||
| -rwxr-xr-x | tests/basic/tier/locked_file_migration.t | 36 | ||||
| -rwxr-xr-x | tests/basic/tier/tier.t | 48 | ||||
| -rw-r--r-- | tests/tier.rc | 85 | 
6 files changed, 95 insertions, 170 deletions
diff --git a/tests/basic/tier/bug-1214222-directories_miising_after_attach_tier.t b/tests/basic/tier/bug-1214222-directories_missing_after_attach_tier.t index 6199463b36d..8aa1380ae46 100755 --- a/tests/basic/tier/bug-1214222-directories_miising_after_attach_tier.t +++ b/tests/basic/tier/bug-1214222-directories_missing_after_attach_tier.t @@ -2,6 +2,7 @@  . $(dirname $0)/../../include.rc  . $(dirname $0)/../../volume.rc +. $(dirname $0)/../../tier.rc  LAST_BRICK=3  CACHE_BRICK_FIRST=4 @@ -9,23 +10,6 @@ CACHE_BRICK_LAST=5  DEMOTE_TIMEOUT=12  PROMOTE_TIMEOUT=5 -function confirm_tier_removed { -    $CLI system getspec $V0 | grep $1 -    if [ $? == 0 ]; then -        echo "1" -    else -        echo "0" -    fi -} - -function confirm_vol_stopped { -    $CLI volume stop $1 -    if [ $? == 0 ]; then -        echo "0" -    else -        echo "1" -    fi -}  LAST_BRICK=1  CACHE_BRICK=2 diff --git a/tests/basic/tier/fops-during-migration.t b/tests/basic/tier/fops-during-migration.t index ce25f0acc32..aa868847738 100755 --- a/tests/basic/tier/fops-during-migration.t +++ b/tests/basic/tier/fops-during-migration.t @@ -2,6 +2,7 @@  . $(dirname $0)/../../include.rc  . $(dirname $0)/../../volume.rc +. $(dirname $0)/../../tier.rc  NUM_BRICKS=3 @@ -10,16 +11,6 @@ PROMOTE_FREQ=5  TEST_STR="Testing write and truncate fops on tier migration" -function is_sticky_set () { -        echo $1 -        if [ -k $1 ]; -        then -                echo "yes" -        else -                echo "no" -        fi -} -  # Creates a tiered volume with pure distribute hot and cold tiers  # Both hot and cold tiers will have an equal number of bricks. diff --git a/tests/basic/tier/legacy-many.t b/tests/basic/tier/legacy-many.t index 17275494aba..2c7ff3e5407 100644 --- a/tests/basic/tier/legacy-many.t +++ b/tests/basic/tier/legacy-many.t @@ -2,6 +2,8 @@  . $(dirname $0)/../../include.rc  . $(dirname $0)/../../volume.rc +. $(dirname $0)/../../tier.rc +  LAST_BRICK=3  CACHE_BRICK_FIRST=4 @@ -15,64 +17,6 @@ TEST_DIR="test_files"  NUM_FILES=20 -# Grab md5sum without file path (failed attempt notifications are discarded) -function fingerprint { -    md5sum $1 2> /dev/null | grep --only-matching -m 1 '^[0-9a-f]*' -} - -# Create a large number of files. Store their md5 signatures. -function create_many_files { -    mkdir ${TEST_DIR} -    for i in `seq 1 $NUM_FILES`; do -        dd if=/dev/urandom of=./${TEST_DIR}/i$i bs=1048576 count=1; -        id[i]=$(fingerprint "./${TEST_DIR}/i$i"); -    done -} - -function confirm_tier_removed { -    $CLI system getspec $V0 | grep $1 -    if [ $? == 0 ]; then -        echo "1" -    else -        echo "0" -    fi -} - -function confirm_vol_stopped { -    $CLI volume stop $1 -    if [ $? == 0 ]; then -        echo "0" -    else -        echo "1" -    fi -} - -function check_counters { -    index=0 -    ret=0 -    rm -f /tmp/tc*.txt -    echo "0" > /tmp/tc2.txt - -    $CLI volume rebalance $V0 tier status | grep localhost > /tmp/tc.txt - -    promote=`cat /tmp/tc.txt |awk '{print $2}'` -    demote=`cat /tmp/tc.txt |awk '{print $3}'` -   if [ "${promote}" != "${1}" ]; then -        echo "1" > /tmp/tc2.txt - -   elif [ "${demote}" != "${2}" ]; then -        echo "2" > /tmp/tc2.txt -   fi - -    # temporarily disable non-Linux tests. -    case $OSTYPE in -        NetBSD | FreeBSD | Darwin) -            echo "0" > /tmp/tc2.txt -            ;; -    esac -    cat /tmp/tc2.txt -} -  function read_all {      for file in *      do @@ -96,8 +40,9 @@ TEST $CLI volume set $V0 features.ctr-enabled on  TEST $GFS --volfile-id=/$V0 --volfile-server=$H0 $M0;  # Create a number of "legacy" files before attaching tier -cd $M0 -TEST create_many_files +mkdir $M0/${TEST_DIR} +cd $M0/${TEST_DIR} +TEST create_many_files tfile $NUM_FILES  wait  # Attach tier @@ -116,7 +61,7 @@ TEST read_all  # Test to make sure files were promoted as expected  sleep $DEMOTE_TIMEOUT -EXPECT_WITHIN $DEMOTE_TIMEOUT "0" check_counters 20 0 +EXPECT_WITHIN $DEMOTE_TIMEOUT "0" check_counters $NUM_FILES 0  cd;  cleanup diff --git a/tests/basic/tier/locked_file_migration.t b/tests/basic/tier/locked_file_migration.t index c3ba1b27749..7a03d1e3d36 100755 --- a/tests/basic/tier/locked_file_migration.t +++ b/tests/basic/tier/locked_file_migration.t @@ -2,6 +2,7 @@  . $(dirname $0)/../../include.rc  . $(dirname $0)/../../volume.rc +. $(dirname $0)/../../tier.rc  NUM_BRICKS=3 @@ -11,41 +12,6 @@ DEMOTE_TIMEOUT=15  TEST_STR="Testing write and truncate fops on tier migration" -function is_sticky_set () { -        echo $1 -        if [ -k $1 ]; -        then -                echo "yes" -        else -                echo "no" -        fi -} - -function check_counters { -    index=0 -    ret=0 -    rm -f /tmp/tc*.txt -    echo "0" > /tmp/tc2.txt -    $CLI volume rebalance $V0 tier status | grep localhost > /tmp/tc.txt - -    promote=`cat /tmp/tc.txt |awk '{print $2}'` -    demote=`cat /tmp/tc.txt |awk '{print $3}'` -    if [ "${promote}" != "${1}" ]; then -         echo "1" > /tmp/tc2.txt - -    elif [ "${demote}" != "${2}" ]; then -         echo "2" > /tmp/tc2.txt -    fi - -    # temporarily disable non-Linux tests. -    case $OSTYPE in -        NetBSD | FreeBSD | Darwin) -            echo "0" > /tmp/tc2.txt -            ;; -    esac -    cat /tmp/tc2.txt -} -  # Creates a tiered volume with pure distribute hot and cold tiers  # Both hot and cold tiers will have an equal number of bricks. diff --git a/tests/basic/tier/tier.t b/tests/basic/tier/tier.t index 67927047729..fedd3bde1c9 100755 --- a/tests/basic/tier/tier.t +++ b/tests/basic/tier/tier.t @@ -2,6 +2,7 @@  . $(dirname $0)/../../include.rc  . $(dirname $0)/../../volume.rc +. $(dirname $0)/../../tier.rc  LAST_BRICK=3  CACHE_BRICK_FIRST=4 @@ -20,10 +21,6 @@ function sleep_first_cycle {      sleep $mod  } -# Grab md5sum without file path (failed attempt notifications are discarded). -function fingerprint { -    md5sum $1 2> /dev/null | grep --only-matching -m 1 '^[0-9a-f]*' -}  function file_on_slow_tier {      found=0 @@ -79,49 +76,6 @@ function file_on_fast_tier {      fi  } -function confirm_tier_removed { -    $CLI system getspec $V0 | grep $1 -    if [ $? == 0 ]; then -        echo "1" -    else -        echo "0" -    fi -} - -function confirm_vol_stopped { -    $CLI volume stop $1 -    if [ $? == 0 ]; then -        echo "0" -    else -        echo "1" -    fi -} - -function check_counters { -    index=0 -    ret=0 -    rm -f /tmp/tc*.txt -    echo "0" > /tmp/tc2.txt - -    $CLI volume rebalance $V0 tier status | grep localhost > /tmp/tc.txt - -    promote=`cat /tmp/tc.txt |awk '{print $2}'` -    demote=`cat /tmp/tc.txt |awk '{print $3}'` -   if [ "${promote}" != "${1}" ]; then -        echo "1" > /tmp/tc2.txt - -   elif [ "${demote}" != "${2}" ]; then -        echo "2" > /tmp/tc2.txt -   fi - -    # temporarily disable non-Linux tests. -    case $OSTYPE in -        NetBSD | FreeBSD | Darwin) -            echo "0" > /tmp/tc2.txt -            ;; -    esac -    cat /tmp/tc2.txt -}  cleanup diff --git a/tests/tier.rc b/tests/tier.rc new file mode 100644 index 00000000000..393d712f3bb --- /dev/null +++ b/tests/tier.rc @@ -0,0 +1,85 @@ +#!/bin/bash + +# Common tier functions + +# Check if a file is being migrated +# by checking for the presence of +# the sticky bit +# Args: $1 : path to file + +function is_sticky_set () { +        echo $1 +        if [ -k $1 ]; +        then +                echo "yes" +        else +                echo "no" +        fi +} + + +function check_counters { +    index=0 +    ret=0 +    rm -f /tmp/tc*.txt +    echo "0" > /tmp/tc2.txt +    $CLI volume rebalance $V0 tier status | grep localhost > /tmp/tc.txt + +    promote=`cat /tmp/tc.txt |awk '{print $2}'` +    demote=`cat /tmp/tc.txt |awk '{print $3}'` +    if [ "${promote}" != "${1}" ]; then +         echo "1" > /tmp/tc2.txt + +    elif [ "${demote}" != "${2}" ]; then +         echo "2" > /tmp/tc2.txt +    fi + +    # temporarily disable non-Linux tests. +    case $OSTYPE in +        NetBSD | FreeBSD | Darwin) +            echo "0" > /tmp/tc2.txt +            ;; +    esac +    cat /tmp/tc2.txt +} + + +# Grab md5sum without file path (failed attempt notifications are discarded) +function fingerprint { +    md5sum $1 2> /dev/null | grep --only-matching -m 1 '^[0-9a-f]*' +} + + + +# Create a large number of files in the current directory. +# $1 : file name prefix. Will create files $2-1 to $2-$3 +# $2 : number of files + +function create_many_files { +    filename=$1 +    num=$2 + +    for i in `seq 1 $num`; do +        dd if=/dev/urandom of=./${dirname}/${filename}$i bs=104857 count=1; +    done +} + + +function confirm_tier_removed { +    $CLI system getspec $V0 | grep $1 +    if [ $? == 0 ]; then +        echo "1" +    else +        echo "0" +    fi +} + +function confirm_vol_stopped { +    $CLI volume stop $1 +    if [ $? == 0 ]; then +        echo "0" +    else +        echo "1" +    fi +} +  | 
