This file is indexed.

/var/lib/pcp/testsuite/642 is in pcp-testsuite 3.10.8build1.

This file is owned by root:root, with mode 0o755.

The actual contents of the file can be viewed below.

  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
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
#! /bin/sh
# PCP QA Test No. 642
# concurrent PMDA installs trash the PMNS?
#
# Copyright (c) 2015 Red Hat.
# 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

[ -f $PCP_PMDAS_DIR/trace/pmdatrace ] || _notrun "trace pmda not installed"
[ -f $PCP_PMDAS_DIR/sendmail/pmdasendmail ] || _notrun "sendmail pmda not installed"

rm -f $seq.out $seq.full
if [ $PCP_VER -ge 30813 ]
then
    ln $seq.out.4 $seq.out || exit 1
elif [ $PCP_VER -ge 30801 ]
then
    ln $seq.out.3 $seq.out || exit 1
elif [ $PCP_VER -ge 30600 ]
then
    ln $seq.out.2 $seq.out || exit 1
else
    ln $seq.out.1 $seq.out || exit 1
fi

status=0	# success is the default!
$sudo rm -rf $tmp.*
done_clean=false

pcp >>$here/$seq.full
pminfo trace >/dev/null 2>&1
remove_trace=$?
echo "remove_trace=$remove_trace" >>$here/$seq.full
pminfo trivial >/dev/null 2>&1
remove_trivial=$?
echo "remove_trivial=$remove_trivial" >>$here/$seq.full
pminfo sendmail >/dev/null 2>&1
remove_sendmail=$?
echo "remove_sendmail=$remove_sendmail" >>$here/$seq.full

_setup_pmdas()
{
    cd $PCP_PMDAS_DIR
    for pmda in trivial simple sample sendmail trace
    do
	cd $pmda
	$sudo ./Install -e -Q </dev/null >>$here/$seq.full 2>&1
	cd ..
    done
}

_cleanup()
{
    if $done_clean
    then
	:
    else
	if [ $remove_trace -ne 0 ]
	then
	    cd $PCP_PMDAS_DIR/trace
	    $sudo ./Remove >>$here/$seq.full 2>&1
	fi
	if [ $remove_trivial -ne 0 ]
	then
	    cd $PCP_PMDAS_DIR/trivial
	    $sudo ./Remove >>$here/$seq.full 2>&1
	fi
	if [ $remove_sendmail -ne 0 ]
	then
	    cd $PCP_PMDAS_DIR/sendmail
	    $sudo ./Remove >>$here/$seq.full 2>&1
	fi
	_restore_config $PCP_PMCDCONF_PATH
	$sudo $PCP_RC_DIR/pcp restart | _filter_pcp_start
	_wait_for_pmcd
	_wait_for_pmlogger
	done_clean=true
    fi
    $sudo rm -f $tmp.*
    exit $status
}

trap "_cleanup; exit \$status" 0 1 2 3 15

# copy the pmcd config file to restore state later.
_save_config $PCP_PMCDCONF_PATH

# real QA test starts here
unset ROOT TOOLROOT MAKEFLAGS
_setup_pmdas
pminfo -n $PCP_VAR_DIR/pmns/root | LC_COLLATE=POSIX sort >$tmp.pmns.start

# do 'em in parallel
#
cd $PCP_PMDAS_DIR
i=1
for pmda in trivial simple sample sendmail trace
do
    cd $pmda
    $sudo ./Install -e -Q </dev/null >$tmp.out.$i 2>&1 &
    cd ..
    i=`expr $i + 1`
done

wait

for i in 1 2 3 4 5
do
    echo
    echo "=== install #$i ==="
    _filter_pmda_install <$tmp.out.$i
done

echo
echo "=== PMNS differences (none expected) ==="
pminfo -n $PCP_VAR_DIR/pmns/root \
| LC_COLLATE=POSIX sort \
| diff - $tmp.pmns.start
echo

# success, all done
exit