Whamcloud - gitweb
LU-5759 tests: use lfs getstripe -M instead of get_mds_num
[fs/lustre-release.git] / lustre / tests / test-framework.sh
index bfdc9c2..13d02b9 100755 (executable)
@@ -370,7 +370,7 @@ module_loaded () {
 
 # Load a module on the system where this is running.
 #
-# Synopsis: load_module module_name [module arguments for insmod/modprobe]
+# usage: load_module module_name [module arguments for insmod/modprobe]
 #
 # If module arguments are not given but MODOPTS_<MODULE> is set, then its value
 # will be used as the arguments.  Otherwise arguments will be obtained from
@@ -2064,6 +2064,8 @@ sync_all_data() {
 
 wait_delete_completed_mds() {
        local MAX_WAIT=${1:-20}
+       # for ZFS, waiting more time for DMUs to be committed
+       local ZFS_WAIT=${2:-5}
        local mds2sync=""
        local stime=$(date +%s)
        local etime
@@ -2099,6 +2101,14 @@ wait_delete_completed_mds() {
                if [[ $changes -eq 0 ]]; then
                        etime=$(date +%s)
                        #echo "delete took $((etime - stime)) seconds"
+
+                       # the occupied disk space will be released
+                       # only after DMUs are committed
+                       if [[ $(facet_fstype $SINGLEMDS) == zfs ]]; then
+                               echo "sleep $ZFS_WAIT for ZFS OSD"
+                               sleep $ZFS_WAIT
+                       fi
+
                        return
                fi
                sleep 1
@@ -4638,7 +4648,7 @@ stop_full_debug_logging() {
 }
 
 # prints bash call stack
-log_trace_dump() {
+print_stack_trace() {
        echo "  Trace dump:"
        for (( i=1; i < ${#BASH_LINENO[*]} ; i++ )) ; do
                local s=${BASH_SOURCE[$i]}
@@ -4664,7 +4674,7 @@ error_noexit() {
 
 
        log " ${TESTSUITE} ${TESTNAME}: @@@@@@ ${TYPE}: $@ "
-       log_trace_dump
+       print_stack_trace >&2
 
        mkdir -p $LOGDIR
        # We need to dump the logs on all nodes
@@ -4850,7 +4860,7 @@ run_test() {
 }
 
 log() {
-    echo "$*"
+       echo "$*" >&2
     module_loaded lnet || load_modules
 
     local MSG="$*"
@@ -5656,27 +5666,6 @@ fi;
 exit \\\$rc"
 }
 
-# CMD: determine mds index where directory inode presents
-get_mds_dir() {
-    local dir=$1
-    local SEQ
-
-    SEQ=$(lfs path2fid $dir | tr '[:]' ' '|cut -f2 -d ' ')
-    if [ "$SEQ" == "" ]; then
-       error "can't get sequence for $dir"
-       return 1
-    fi
-    export SEQ
-
-    do_facet mds1 "cat /proc/fs/lustre/fld/srv-*-MDT0000/fldb" | \
-       tr '[)]:-' ' ' |                                \
-       while read SS EE IDX TYP; do                    \
-               if let "SEQ >= SS && SEQ < EE"; then    \
-                       echo $IDX;                      \
-               fi;                                     \
-       done
-}
-
 mdsrate_cleanup () {
        if [ -d $4 ]; then
                mpi_run ${MACHINEFILE_OPTION} $2 -np $1 ${MDSRATE} --unlink \
@@ -6987,11 +6976,10 @@ precreated_ost_obj_count()
        local mdt_name="MDT$(printf '%04x' $mdt_idx)"
        local ost_name="OST$(printf '%04x' $ost_idx)"
        local proc_path="${FSNAME}-${ost_name}-osc-${mdt_name}"
-       local last_id=$(do_facet mds${mdt_idx} lctl get_param -n \
+       local last_id=$(do_facet mds$((mdt_idx + 1)) lctl get_param -n \
                        osp.$proc_path.prealloc_last_id)
-       local next_id=$(do_facet mds${mdt_idx} lctl get_param -n \
+       local next_id=$(do_facet mds$((mdt_idx + 1)) lctl get_param -n \
                        osp.$proc_path.prealloc_next_id)
-
        echo $((last_id - next_id + 1))
 }