Whamcloud - gitweb
b=19194
authorgrev <grev>
Thu, 28 May 2009 14:01:43 +0000 (14:01 +0000)
committergrev <grev>
Thu, 28 May 2009 14:01:43 +0000 (14:01 +0000)
o=Adilger,grev
i=grev
limit unlink tests patch

lustre/tests/mdsrate-create-large.sh
lustre/tests/mdsrate-create-small.sh
lustre/tests/mdsrate-lookup-1dir.sh
lustre/tests/mdsrate-stat-large.sh
lustre/tests/mdsrate-stat-small.sh

index 94bb805..c78ce9a 100644 (file)
@@ -52,7 +52,6 @@ else
     mdsrate_cleanup $NUM_CLIENTS $MACHINEFILE $NUM_FILES $TESTDIR_SINGLE 'f%%d' --ignore
 
     log "===== $0 ### 1 NODE CREATE ###"
-    echo "Running creates on 1 node(s)."
 
     COMMAND="${MDSRATE} ${MDSRATE_DEBUG} --create --time ${TIME_PERIOD}
                 --nfiles ${NUM_FILES} --dir ${TESTDIR_SINGLE} --filefmt 'f%%d'"
@@ -60,21 +59,25 @@ else
     mpi_run -np 1 -machinefile ${MACHINEFILE} ${COMMAND} | tee ${LOG}
 
     if [ ${PIPESTATUS[0]} != 0 ]; then
-       [ -f $LOG ] && cat $LOG
-       error "mpirun ... mdsrate ... failed, aborting"
+       [ -f $LOG ] && sed -e "s/^/log: /" $LOG
+       error "mdsrate creates for a single client failed, aborting"
     fi
     
     log "===== $0 ### 1 NODE UNLINK ###"
-    echo "Running unlinks on 1 node(s)."
 
-    COMMAND="${MDSRATE} ${MDSRATE_DEBUG} --unlink --time ${TIME_PERIOD}
+    if [ -f "$LOG" ]; then
+        CREATED=$(awk '/total:/ { print $7 }' $LOG)
+        [ $CREATED -gt 0 ] && NUM_FILES=$CREATED
+    fi
+
+    COMMAND="${MDSRATE} ${MDSRATE_DEBUG} --unlink
                 --nfiles ${NUM_FILES} --dir ${TESTDIR_SINGLE} --filefmt 'f%%d'"
     echo "+ ${COMMAND}"
     mpi_run -np 1 -machinefile ${MACHINEFILE} ${COMMAND} | tee ${LOG}
  
     if [ ${PIPESTATUS[0]} != 0 ]; then
-       [ -f $LOG ] && cat $LOG
-       error "mpirun ... mdsrate ... failed, aborting"
+       [ -f $LOG ] && sed -e "s/^/log: /" $LOG
+       error "mdsrate unlink on a single client failed, aborting"
     fi
 fi
 
@@ -83,13 +86,13 @@ if [ $IFree -lt $NUM_FILES ]; then
     NUM_FILES=$IFree
 fi
 
+[ $NUM_CLIENTS -eq 1 ] && NOMULTI=yes
 if [ -n "$NOMULTI" ]; then
     echo "NO test for create on multiple nodes."
 else
     mdsrate_cleanup $NUM_CLIENTS $MACHINEFILE $NUM_FILES $TESTDIR_MULTI 'f%%d' --ignore
 
     log "===== $0 ### $NUM_CLIENTS NODES CREATE ###"
-    echo "Running creates on ${NUM_CLIENTS} node(s)."
 
     COMMAND="${MDSRATE} ${MDSRATE_DEBUG} --create --time ${TIME_PERIOD}
                 --nfiles $NUM_FILES --dir ${TESTDIR_MULTI} --filefmt 'f%%d'"
@@ -97,27 +100,28 @@ else
     mpi_run -np ${NUM_CLIENTS} -machinefile ${MACHINEFILE} ${COMMAND} | tee ${LOG}
 
     if [ ${PIPESTATUS[0]} != 0 ]; then
-       [ -f $LOG ] && cat $LOG
-       error "mpirun ... mdsrate ... failed, aborting"
+       [ -f $LOG ] && sed -e "s/^/log: /" $LOG
+       error "mdsrate create on multiple nodes failed, aborting"
     fi
 
-    echo "Running unlinks on ${NUM_CLIENTS} node(s)."
+    log "===== $0 ### $NUM_CLIENTS NODES UNLINK ###"
 
-    COMMAND="${MDSRATE} ${MDSRATE_DEBUG} --unlink --time ${TIME_PERIOD}
+    if [ -f "$LOG" ]; then
+        CREATED=$(awk '/total:/ { print $7 }' $LOG)
+        [ $CREATED -gt 0 ] && NUM_FILES=$CREATED
+    fi
+
+    COMMAND="${MDSRATE} ${MDSRATE_DEBUG} --unlink
                 --nfiles ${NUM_FILES} --dir ${TESTDIR_MULTI} --filefmt 'f%%d'"
     echo "+ ${COMMAND}"
     mpi_run -np ${NUM_CLIENTS} -machinefile ${MACHINEFILE} ${COMMAND} | tee ${LOG}
 
     if [ ${PIPESTATUS[0]} != 0 ]; then
-       [ -f $LOG ] && cat $LOG
-       error "mpirun ... mdsrate ... failed, aborting"
+       [ -f $LOG ] && sed -e "s/^/log: /" $LOG
+       error "mdsrate unlink on multiple nodes failed, aborting"
     fi
-
 fi
 
-equals_msg `basename $0`: test complete, cleaning up
-mdsrate_cleanup $NUM_CLIENTS $MACHINEFILE $NUM_FILES $TESTDIR_SINGLE 'f%%d' --ignore
-mdsrate_cleanup $NUM_CLIENTS $MACHINEFILE $NUM_FILES $TESTDIR_MULTI 'f%%d' --ignore
 rm -f $MACHINEFILE
 check_and_cleanup_lustre
 #rm -f $LOG
index cb4a1c0..4babb26 100644 (file)
@@ -60,7 +60,6 @@ else
         mdsrate_cleanup $NUM_CLIENTS $MACHINEFILE $NUM_FILES $TESTDIR_SINGLE 'f%%d' --ignore
 
         log "===== $0 ### 1 NODE CREATE ###"
-        echo "Running creates on 1 node(s)."
 
         COMMAND="${MDSRATE} ${MDSRATE_DEBUG} --create --time ${TIME_PERIOD}
                     --nfiles $NUM_FILES --dir ${TESTDIR_SINGLE} --filefmt 'f%%d'"
@@ -68,8 +67,8 @@ else
         mpi_run -np 1 -machinefile ${MACHINEFILE} ${COMMAND} | tee ${LOG}
 
         if [ ${PIPESTATUS[0]} != 0 ]; then
-        [ -f $LOG ] && cat $LOG
-            error "mpirun ... mdsrate ... failed, aborting"
+            [ -f $LOG ] && sed -e "s/^/log: /" $LOG
+            error "mdsrate create for a single client failed, aborting"
         fi
     fi
 
@@ -77,16 +76,20 @@ else
         echo "NO Test for unlinks for a single client."
     else
         log "===== $0 ### 1 NODE UNLINK ###"
-        echo "Running unlinks on 1 node(s)."
 
-        COMMAND="${MDSRATE} ${MDSRATE_DEBUG} --unlink --time ${TIME_PERIOD}
+        if [ -f "$LOG" ]; then
+            CREATED=$(awk '/total:/ { print $7 }' $LOG)
+           [ $CREATED -gt 0 ] && NUM_FILES=$CREATED
+        fi
+
+        COMMAND="${MDSRATE} ${MDSRATE_DEBUG} --unlink
                      --nfiles ${NUM_FILES} --dir ${TESTDIR_SINGLE} --filefmt 'f%%d'"
         echo "+ ${COMMAND}"
         mpi_run -np 1 -machinefile ${MACHINEFILE} ${COMMAND} | tee ${LOG}
 
         if [ ${PIPESTATUS[0]} != 0 ]; then
-        [ -f $LOG ] && cat $LOG
-            error "mpirun ... mdsrate ... failed, aborting"
+            [ -f $LOG ] && sed -e "s/^/log: /" $LOG
+            error "mdsrate unlinks for a single client failed, aborting"
         fi
     fi
 fi
@@ -104,8 +107,7 @@ else
     else
         mdsrate_cleanup $NUM_CLIENTS $MACHINEFILE $NUM_FILES $TESTDIR_MULTI 'f%%d' --ignore
 
-        log "===== $0 ### $NUM_CLIENTS NODES CREATE ###"
-        echo "Running creates on ${NUM_CLIENTS} node(s) with $THREADS_PER_CLIENT threads per client."
+        log "===== $0 ### $NUM_CLIENTS NODES CREATE with $THREADS_PER_CLIENT threads per client ###"
 
         COMMAND="${MDSRATE} ${MDSRATE_DEBUG} --create --time ${TIME_PERIOD}
                     --nfiles $NUM_FILES --dir ${TESTDIR_MULTI} --filefmt 'f%%d'"
@@ -113,32 +115,34 @@ else
         mpi_run -np $((NUM_CLIENTS * THREADS_PER_CLIENT)) -machinefile ${MACHINEFILE} \
             ${COMMAND} | tee ${LOG}
         if [ ${PIPESTATUS[0]} != 0 ]; then
-            [ -f $LOG ] && cat $LOG
-            error "mpirun ... mdsrate ... failed, aborting"
+            [ -f $LOG ] && sed -e "s/^/log: /" $LOG
+            error "mdsrate create on multiple nodes failed, aborting"
         fi
     fi
 
     if [ -n "$NOUNLINK" ]; then
         echo "NO Test for unlinks multiple nodes."
     else
-        log "===== $0 ### $NUM_CLIENTS NODES UNLINK ###"
-        echo "Running unlinks on ${NUM_CLIENTS} node(s) with $THREADS_PER_CLIENT threads per client."
+        log "===== $0 ### $NUM_CLIENTS NODES UNLINK with $THREADS_PER_CLIENT threads per client ###"
+
+        if [ -f "$LOG" ]; then
+            CREATED=$(awk '/total:/ { print $7 }' $LOG)
+            [ $CREATED -gt 0 ] && NUM_FILES=$CREATED
+        fi
 
-        COMMAND="${MDSRATE} ${MDSRATE_DEBUG} --unlink --time ${TIME_PERIOD}
+        COMMAND="${MDSRATE} ${MDSRATE_DEBUG} --unlink
                       --nfiles ${NUM_FILES} --dir ${TESTDIR_MULTI} --filefmt 'f%%d'"
         echo "+ ${COMMAND}"
         mpi_run -np $((NUM_CLIENTS * THREADS_PER_CLIENT)) -machinefile ${MACHINEFILE} \
             ${COMMAND} | tee ${LOG}
         if [ ${PIPESTATUS[0]} != 0 ]; then
-            [ -f $LOG ] && cat $LOG
-            error "mpirun ... mdsrate ... failed, aborting"
+            [ -f $LOG ] && sed -e "s/^/log: /" $LOG
+            error "mdsrate unlinks multiple nodes failed, aborting"
         fi
     fi
 fi
 
 equals_msg `basename $0`: test complete, cleaning up
-mdsrate_cleanup $NUM_CLIENTS $MACHINEFILE $NUM_FILES $TESTDIR_SINGLE 'f%%d' --ignore
-mdsrate_cleanup $NUM_CLIENTS $MACHINEFILE $NUM_FILES $TESTDIR_MULTI 'f%%d' --ignore
 rm -f $MACHINEFILE 
 check_and_cleanup_lustre
 #rm -f $LOG
index 6861599..c1cba66 100644 (file)
@@ -54,7 +54,6 @@ else
     mdsrate_cleanup $NUM_CLIENTS $MACHINEFILE $NUM_FILES $TESTDIR 'f%%d' --ignore
 
     log "===== $0 Test preparation: creating ${NUM_FILES} files."
-    echo "Test preparation: creating ${NUM_FILES} files."
 
     NUM_CLIENTS=$(get_node_count ${NODES_TO_USE//,/ })
     NUM_THREADS=$((NUM_CLIENTS * MDSCOUNT))
@@ -67,7 +66,7 @@ else
     mpi_run -np ${NUM_THREADS} -machinefile ${MACHINEFILE} ${COMMAND} 2>&1 
 
     # No lockup if error occurs on file creation, abort.
-    [ ${PIPESTATUS[0]} != 0 ] && error "mpirun ... mdsrate ... file creation failed, aborting"
+    [ ${PIPESTATUS[0]} != 0 ] && error "mdsrate file creation failed, aborting"
 fi
 
 COMMAND="${MDSRATE} ${MDSRATE_DEBUG} --lookup --time ${TIME_PERIOD} ${SEED_OPTION}
@@ -78,28 +77,27 @@ if [ -n "$NOSINGLE" ]; then
     echo "NO Test for lookups on a single client."
 else
     log "===== $0 ### 1 NODE LOOKUPS ###"
-    echo "Running lookups on 1 node(s)."
     echo "+" ${COMMAND}
     mpi_run -np 1 -machinefile ${MACHINEFILE} ${COMMAND} | tee ${LOG}
 
     if [ ${PIPESTATUS[0]} != 0 ]; then
-        [ -f $LOG ] && cat $LOG
-        error "mpirun ... mdsrate ... failed, aborting"
+        [ -f $LOG ] && sed -e "s/^/log: /" $LOG
+        error "mdsrate lookups on a single client failed, aborting"
     fi
 fi
 
 # 2
+[ $NUM_CLIENTS -eq 1 ] && NOMULTI=yes
 if [ -n "$NOMULTI" ]; then
     echo "NO test for lookups on multiple nodes."
 else
     log "===== $0 ### ${NUM_CLIENTS} NODES LOOKUPS ###"
-    echo "Running lookups on ${NUM_CLIENTS} node(s)."
     echo "+" ${COMMAND}
     mpi_run -np ${NUM_CLIENTS} -machinefile ${MACHINEFILE} ${COMMAND} | tee ${LOG}
 
     if [ ${PIPESTATUS[0]} != 0 ]; then
-        [ -f $LOG ] && cat $LOG
-        error "mpirun ... mdsrate ... failed, aborting"
+        [ -f $LOG ] && sed -e "s/^/log: /" $LOG
+        error "mdsrate lookups on multiple nodes failed, aborting"
     fi
 fi
 
index e499f28..ecb18e4 100644 (file)
@@ -59,7 +59,6 @@ else
     mdsrate_cleanup $NUM_CLIENTS $MACHINEFILE $NUM_FILES $TESTDIR 'f%%d' --ignore
 
     log "===== $0 Test preparation: creating ${NUM_FILES} files."
-    echo "Test preparation: creating ${NUM_FILES} files."
 
     COMMAND="${MDSRATE} ${MDSRATE_DEBUG} --create --dir ${TESTDIR}
                         --nfiles ${NUM_FILES} --filefmt 'f%%d'"
@@ -72,7 +71,7 @@ else
     fi
 
     mpi_run -np ${NUM_THREADS} -machinefile ${MACHINEFILE} ${COMMAND} 2>&1
-    [ ${PIPESTATUS[0]} != 0 ] && error "mpirun ... mdsrate ... file creation failed, aborting"
+    [ ${PIPESTATUS[0]} != 0 ] && error "mdsrate file creation failed, aborting"
 
 fi
 
@@ -85,31 +84,29 @@ if [ -n "$NOSINGLE" ]; then
     echo "NO Test for stats on a single client."
 else
     log "===== $0 ### 1 NODE STAT ###"
-    echo "Running stats on 1 node(s)."
     echo "+" ${COMMAND}
 
     mpi_run -np 1 -machinefile ${MACHINEFILE} ${COMMAND} | tee ${LOG}
 
     if [ ${PIPESTATUS[0]} != 0 ]; then
-        [ -f $LOG ] && cat $LOG
-        error "mpirun ... mdsrate ... failed, aborting"
+        [ -f $LOG ] && sed -e "s/^/log: /" $LOG
+        error "mdsrate stats on a single client failed, aborting"
     fi
 fi
 
 # 2
+[ $NUM_CLIENTS -eq 1 ] && NOMULTI=yes
 if [ -n "$NOMULTI" ]; then
     echo "NO test for stats on multiple nodes."
 else
     log "===== $0 ### ${NUM_CLIENTS} NODES STAT ###"
-    echo "Running stats on ${NUM_CLIENTS} node(s)."
     echo "+" ${COMMAND}
 
-    NUM_THREADS=$(get_node_count ${NODES_TO_USE//,/ })
-    mpi_run -np ${NUM_THREADS} -machinefile ${MACHINEFILE} ${COMMAND} | tee ${LOG}
+    mpi_run -np ${NUM_CLIENTS} -machinefile ${MACHINEFILE} ${COMMAND} | tee ${LOG}
 
     if [ ${PIPESTATUS[0]} != 0 ]; then
-        [ -f $LOG ] && cat $LOG
-        error "mpirun ... mdsrate ... failed, aborting"
+        [ -f $LOG ] && sed -e "s/^/log: /" $LOG
+        error "mdsrate stats on multiple nodes failed, aborting"
     fi
 fi
 
index c702721..9ae440a 100644 (file)
@@ -59,7 +59,6 @@ else
     mdsrate_cleanup $NUM_CLIENTS $MACHINEFILE $NUM_FILES $TESTDIR 'f%%d' --ignore
 
     log "===== $0 Test preparation: creating ${NUM_FILES} files."
-    echo "Test preparation: creating ${NUM_FILES} files."
 
     COMMAND="${MDSRATE} ${MDSRATE_DEBUG} --mknod --dir ${TESTDIR}
                         --nfiles ${NUM_FILES} --filefmt 'f%%d'"
@@ -72,7 +71,7 @@ else
     fi
 
     mpi_run -np ${NUM_THREADS} -machinefile ${MACHINEFILE} ${COMMAND} 2>&1
-    [ ${PIPESTATUS[0]} != 0 ] && error "Error running mdsrate, aborting..."
+    [ ${PIPESTATUS[0]} != 0 ] && error "mdsrate file creation failed, aborting"
 
 fi
 
@@ -85,30 +84,29 @@ if [ -n "$NOSINGLE" ]; then
     echo "NO Test for stats on a single client."
 else
     log "===== $0 ### 1 NODE STAT ###"
-    echo "Running stats on 1 node(s)."
     echo "+" ${COMMAND}
 
     mpi_run -np 1 -machinefile ${MACHINEFILE} ${COMMAND} | tee ${LOG}
     
     if [ ${PIPESTATUS[0]} != 0 ]; then
-        [ -f $LOG ] && cat $LOG
-        error "mpirun ... mdsrate ... failed, aborting"
+        [ -f $LOG ] && sed -e "s/^/log: /" $LOG
+        error "mdsrate on a single client failed, aborting"
     fi
 fi
 
 # 2
+[ $NUM_CLIENTS -eq 1 ] && NOMULTI=yes
 if [ -n "$NOMULTI" ]; then
     echo "NO test for stats on multiple nodes."
 else
     log "===== $0 ### ${NUM_CLIENTS} NODES STAT ###"
-    echo "Running stats on ${NUM_CLIENTS} node(s)."
     echo "+" ${COMMAND}
 
     mpi_run -np ${NUM_CLIENTS} -machinefile ${MACHINEFILE} ${COMMAND} | tee ${LOG}
 
     if [ ${PIPESTATUS[0]} != 0 ]; then
-        [ -f $LOG ] && cat $LOG
-        error "mpirun ... mdsrate ... failed, aborting"
+        [ -f $LOG ] && sed -e "s/^/log: /" $LOG
+        error "mdsrate stats on multiple nodes failed, aborting"
     fi
 fi