#!/bin/sh
# PCP QA Test No. 1413
# pmlogger -r
#
# PCP_ARCHIVE_VERSION V3 variant, see 466 for the V2 variant.
#
# Copyright (c) 1995-2002 Silicon Graphics, Inc.  All Rights Reserved.
# Copyright 2014 Red Hat
#

seq=`basename $0`
echo "QA output created by $seq"

# get standard environment, filters and checks
. ./common.product
. ./common.filter
. ./common.check

status=1	# failure is the default!
trap "rm -f $tmp.*; exit \$status" 0 1 2 3 15

# real QA test starts here
cat <<End-of-File | pmlogger -V3 -r -l $tmp.log -T 3sec $tmp
log mandatory on once {
    sample.control
}
log mandatory on once {
    sample.long.one
}
log mandatory on once {
    sample.float.one
}
log mandatory on once {
    sample.double.one
}
log mandatory on once {
    sample.string.null
}
log mandatory on once {
    sample.string.hullo
}
log mandatory on once {
    sample.bin
}
log mandatory on once {
    sample.control
    sample.long.one
}
log mandatory on once {
    sample.control
    sample.float.one
    sample.double.one
    sample.string.null
    sample.string.hullo
    sample.bin
}
log mandatory on 500 msec {
    sample.control
}
log mandatory on 1 sec {
    sample.control
    sample.long.one
}
log mandatory on 2 sec {
    sample.control
    sample.float.one
    sample.double.one
    sample.string.null
    sample.string.hullo
    sample.bin
}
End-of-File

sed <$tmp.log \
    -e '1,/^Archive basename:/d' \
    -e '/^Log finished/d' \
| _filter_pmlogger_log

echo
echo "unique non-preamble/non-postscript record sizes from pmdumplog ..."
# need to drop the first and last 'bytes]' lines from pmdumplog output
# and only report the unique ones
#
pmdumplog -s $tmp \
| _filter_pmdumplog \
| tee -a $seq.full \
| grep 'bytes]' \
| sed -e 1d \
| sed -e '$d' \
| $PCP_AWK_PROG '
{ if (seen[$0]) next
  print $0
  seen[$0] = 1
}'

# success, all done
status=0
exit
