#!/bin/sh
# PCP QA Test No. 889
# Checking pmdaproc for pids greater than 1 million on linux
#
# Copyright (c) 2015 Red Hat.  All Rights Reserved.
#

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

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

[ $PCP_PLATFORM = linux ] || _notrun "pmdaproc for Linux test"

status=1	# failure is the default!
$sudo rm -rf $tmp $tmp.* $seq.full
trap "cd $here; rm -rf $tmp.*; exit \$status" 0 1 2 3 15

_filter()
{
    cat >$tmp.out
    grep -v 'inst \[' $tmp.out
    sed -n -e 's/inst \[[0-9][0-9]*/inst [N/p' $tmp.out \
    | LC_COLLATE=POSIX sort
}


# real QA test starts here
root=$tmp.root
export PROC_STATSPATH=$root
pmda=$PCP_PMDAS_DIR/proc/pmda_proc.so,proc_init

for tgz in $here/linux/proc-big-pid-*.tgz
do
    cd $here
    $sudo rm -fr $root
    mkdir $root || _fail "root in use when processing $tgz"
    cd $root
    rm -f $tmp.names
    tar xf $tgz
    base=`basename $tgz`

    pminfo -L -K clear -K add,3,$pmda -d -f proc.psinfo.pid | _filter

done
# success, all done
status=0

exit
