blob: 0b69c3e65e66725672b4e09581ecb8fcd6b2cd49 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
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
|