diff options
Diffstat (limited to 'qa/049')
-rwxr-xr-x | qa/049 | 76 |
1 files changed, 76 insertions, 0 deletions
@@ -0,0 +1,76 @@ +#! /bin/sh +# PCP QA Test No. 049 +# Big archive exerciser and temporal index +# +# Copyright (c) 1995-2002 Silicon Graphics, Inc. All Rights Reserved. +# + +seq=`basename $0` +echo "QA output created by $seq" + +# get standard filters +. ./common.product +. ./common.filter +. ./common.check + +rm -f $seq.out $seq.full +if [ $PCP_VER -lt 3509 ] +then + ln $seq.out.1 $seq.out || exit 1 +else + ln $seq.out.2 $seq.out || exit 1 +fi + +trap "rm -f $tmp.*; exit" 0 1 2 3 15 + +# real QA test starts here +for arch in src/mv-bigbin +do + echo | tee -a $seq.full + echo "=== $arch ===" | tee -a $seq.full + pmdumplog -t $arch >>$seq.full + src/xarch -a $arch -D128 2>&1 \ + | tee -a $seq.full \ + | sed \ + -e 's/posn=[0-9]*/posn=OFFSET/' \ + -e 's/__pmLogChkLabel/chkLabel/g' \ + -e '/__pmLogRead/d' \ + -e '/LogLoadMeta/d' \ + -e '/__pmLogOpen: inspect file/d' \ + -e 's/[0-2][0-9]:[0-5][0-9]:[0-5][0-9]\.[0-9][0-9][0-9]/TIME/g' \ + -e 's/TIME (t=[0-9][0-9.]*)/TIME/g' \ + -e 's/pid=.*host=.*/pid=PID host=HOSTNAME/' \ + | $PCP_AWK_PROG ' +$1 == "chkLabel:" && /vol=0/ { if (fd1 == "") fd1 = $2 + if (fd1 == $2) $2 = "fd=<n1>" + } +$1 == "chkLabel:" && /vol=-2/ { if (fd2 == "") fd2 = $2 + if (fd2 == $2) $2 = "fd=<n2>" + } +$1 == "chkLabel:" && /vol=-1/ { if (fd3 == "") fd3 = $2 + if (fd3 == $2) $2 = "fd=<n3>" + } +$1 == "__pmLogRead:" { if (fd4 == "") fd4 = $2 + if (fd4 == $2) $2 = "fd=<n4>" + } +$1 == "chkLabel:" && /vol=[1-9]/ { if (fd5 == "") fd5 = $2 + if (fd5 == $2) $2 = "fd=<n5>" + } + { print }' \ + | $PCP_AWK_PROG -v sortfile=$tmp.sort ' +/pmLogOpen/ { print > sortfile; open=1; next } +open==1 && $1 !~ /pmLogOpen/ { system("sort " sortfile); open=0 } +/^Pass / { pass = $2 } +pass == "4:" && /^Found 1000 / { print; skip = 1 } +pass == "4:" && /^Found 750 / { print; skip = 1 } +pass == "5:" && /^Found 750 / { print; skip = 1 } +pass == "5:" && /^Found 500 / { print; skip = 1 } +skip == 1 && /__pmLogSetTime/ { print "__pmLogSetTime ..."; next } +skip == 1 && /__pmLogFetch/ { skip = 2; next } +skip == 2 && /__pmLogFetch/ { next } +skip == 1 { next } +skip == 2 { skip = 0 } + { print }' +done + +exit 0 |