Remove old regression test drivers.
This commit is contained in:
parent
e5ba2fc5b5
commit
bf14fb8fa3
@ -1,13 +0,0 @@
|
||||
#!/bin/sh
|
||||
# check regression tests
|
||||
# usage: checkresults [ regress.out ]
|
||||
|
||||
[ "$#" -eq 0 ] && set regress.out
|
||||
|
||||
for file in `cat "$@" | grep 'failed$' | grep -v '^dropdb: ' | cut -d " " -f 1`
|
||||
do
|
||||
echo "====== $file ======"
|
||||
diff -w expected/$file.out results
|
||||
done
|
||||
|
||||
|
@ -1,183 +0,0 @@
|
||||
#!/bin/sh
|
||||
# $Header: /cvsroot/pgsql/src/test/regress/Attic/regress.sh,v 1.56 2000/11/11 19:56:20 thomas Exp $
|
||||
#
|
||||
if [ $# -eq 0 ]; then
|
||||
echo "Syntax: $0 <hostname> [extra-tests]"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
hostname=$1
|
||||
shift
|
||||
extratests="$*"
|
||||
|
||||
case $hostname in
|
||||
i*86-pc-cygwin* | i386-*-qnx* | *beos*)
|
||||
HOSTLOC="-h localhost"
|
||||
;;
|
||||
*)
|
||||
HOSTLOC=""
|
||||
;;
|
||||
esac
|
||||
|
||||
if echo '\c' | grep -s c >/dev/null 2>&1
|
||||
then
|
||||
ECHO_N="echo -n"
|
||||
ECHO_C=""
|
||||
else
|
||||
ECHO_N="echo"
|
||||
ECHO_C='\c'
|
||||
fi
|
||||
|
||||
PGTZ="PST8PDT"; export PGTZ
|
||||
PGDATESTYLE="Postgres,US"; export PGDATESTYLE
|
||||
unset LC_COLLATE LC_CTYPE LC_MONETARY LC_MESSAGES LC_NUMERIC LC_TIME LC_ALL LANG LANGUAGE
|
||||
|
||||
FRONTEND="psql $HOSTLOC -a -q -X"
|
||||
|
||||
# ----------
|
||||
# Scan resultmap file to find which platform-specific expected files to use.
|
||||
# The format of each line of the file is
|
||||
# testname/hostnamepattern=substitutefile
|
||||
# where the hostnamepattern is evaluated per the rules of expr(1) --- namely,
|
||||
# it is a standard regular expression with an implicit ^ at the start.
|
||||
#
|
||||
# The tempfile hackery is needed because some shells will run the loop
|
||||
# inside a subshell, whereupon shell variables set therein aren't seen
|
||||
# outside the loop :-(
|
||||
# ----------
|
||||
TMPFILE="matches.$$"
|
||||
cat /dev/null > $TMPFILE
|
||||
while read LINE
|
||||
do
|
||||
HOSTPAT=`expr "$LINE" : '.*/\(.*\)='`
|
||||
if [ `expr "$hostname" : "$HOSTPAT"` -ne 0 ]
|
||||
then
|
||||
# remove hostnamepattern from line so that there are no shell
|
||||
# wildcards in SUBSTLIST; else later 'for' could expand them!
|
||||
TESTNAME=`expr "$LINE" : '\(.*\)/'`
|
||||
SUBST=`echo "$LINE" | sed 's/^.*=//'`
|
||||
echo "$TESTNAME=$SUBST" >> $TMPFILE
|
||||
fi
|
||||
done <resultmap
|
||||
SUBSTLIST=`cat $TMPFILE`
|
||||
rm -f $TMPFILE
|
||||
|
||||
if [ -d ./obj ]; then
|
||||
cd ./obj
|
||||
fi
|
||||
|
||||
[ -d results ] || mkdir results
|
||||
|
||||
echo "=============== Notes... ================="
|
||||
echo "postmaster must already be running for the regression tests to succeed."
|
||||
echo "The time zone is set to PST8PDT for these tests by the client frontend."
|
||||
echo "Please report any apparent problems to ports@postgresql.org"
|
||||
echo "See regress/README for more information."
|
||||
echo ""
|
||||
|
||||
echo "=============== dropping old regression database... ================="
|
||||
dropdb $HOSTLOC regression
|
||||
|
||||
echo "=============== creating new regression database... ================="
|
||||
if [ -n "$MULTIBYTE" ];then
|
||||
mbtests=`echo $MULTIBYTE | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
|
||||
PGCLIENTENCODING="$MULTIBYTE"
|
||||
export PGCLIENTENCODING
|
||||
ENCODINGOPT="-E $MULTIBYTE"
|
||||
else
|
||||
mbtests=""
|
||||
unset PGCLIENTENCODING
|
||||
ENCODINGOPT=""
|
||||
fi
|
||||
createdb $ENCODINGOPT $HOSTLOC regression
|
||||
if [ $? -ne 0 ]; then
|
||||
echo createdb failed
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if [ "x$hostname" != "xi386-pc-qnx" ]; then
|
||||
echo "=============== installing languages... ================="
|
||||
$ECHO_N "installing PL/pgSQL .. " $ECHO_C
|
||||
createlang $HOSTLOC plpgsql regression
|
||||
if [ $? -ne 0 -a $? -ne 2 ]; then
|
||||
echo failed
|
||||
exit 1
|
||||
else
|
||||
echo ok
|
||||
fi
|
||||
fi
|
||||
|
||||
echo "=============== running regression queries... ================="
|
||||
cat /dev/null > regression.diffs
|
||||
|
||||
if [ "x$hostname" = "xi386-pc-qnx" ]; then
|
||||
DIFFOPT="-b"
|
||||
else
|
||||
DIFFOPT="-w"
|
||||
fi
|
||||
|
||||
stdtests=`awk '
|
||||
$1=="test" { print $2; }
|
||||
{}
|
||||
' < sql/run_check.tests`
|
||||
|
||||
for tst in $stdtests $mbtests $extratests
|
||||
do
|
||||
$ECHO_N "${tst} .. " $ECHO_C
|
||||
$FRONTEND regression < sql/${tst}.sql > results/${tst}.out 2>&1
|
||||
|
||||
#
|
||||
# Check list extracted from resultmap to see if we should compare
|
||||
# to a system-specific expected file.
|
||||
# There shouldn't be multiple matches, but take the last if there are.
|
||||
#
|
||||
EXPECTED="expected/${tst}.out"
|
||||
for LINE in $SUBSTLIST
|
||||
do
|
||||
if [ `expr "$LINE" : "$tst="` -ne 0 ]
|
||||
then
|
||||
SUBST=`echo "$LINE" | sed 's/^.*=//'`
|
||||
EXPECTED="expected/${SUBST}.out"
|
||||
fi
|
||||
done
|
||||
|
||||
if [ `diff ${DIFFOPT} ${EXPECTED} results/${tst}.out | wc -l` -ne 0 ]; then
|
||||
( diff ${DIFFOPT} -C3 ${EXPECTED} results/${tst}.out; \
|
||||
echo ""; \
|
||||
echo "----------------------"; \
|
||||
echo "" ) >> regression.diffs
|
||||
echo failed
|
||||
else
|
||||
echo ok
|
||||
fi
|
||||
done
|
||||
|
||||
exit 0
|
||||
|
||||
echo "=============== running error queries ... ================="
|
||||
$FRONTEND regression < errors.sql
|
||||
# this will generate error result code
|
||||
|
||||
#set this to 1 to avoid clearing the database
|
||||
debug=0
|
||||
|
||||
if [ test "$debug" -eq 1 ]; then
|
||||
echo Skipping clearing and deletion of the regression database
|
||||
else
|
||||
echo "=============== clearing regression database... ================="
|
||||
$FRONTEND regression < drop.sql
|
||||
if [ $? -ne 0 ]; then
|
||||
echo the drop script has an error
|
||||
exit 1
|
||||
fi
|
||||
|
||||
exit 0
|
||||
echo "=============== dropping regression database... ================="
|
||||
dropdb regression
|
||||
if [ $? -ne 0 ]; then
|
||||
echo dropdb failed
|
||||
exit 1
|
||||
fi
|
||||
|
||||
exit 0
|
||||
fi
|
@ -1,489 +0,0 @@
|
||||
#!/bin/sh
|
||||
#
|
||||
# $Header: /cvsroot/pgsql/src/test/regress/Attic/run_check.sh,v 1.26 2000/09/29 17:17:37 petere Exp $
|
||||
|
||||
# ----------
|
||||
# Check call syntax
|
||||
# ----------
|
||||
if [ $# -eq 0 ]
|
||||
then
|
||||
echo "Syntax: $0 <hostname> [extra-tests]"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# ----------
|
||||
# Change to the regression test directory explicitly
|
||||
# ----------
|
||||
cd `dirname $0`
|
||||
|
||||
# ----------
|
||||
# Some paths used during the test
|
||||
# ----------
|
||||
PWD=`pwd`
|
||||
CHKDIR="$PWD/tmp_check"
|
||||
PGDATA="$CHKDIR/data"
|
||||
LIBDIR="$CHKDIR/lib"
|
||||
BINDIR="$CHKDIR/bin"
|
||||
LOGDIR="$CHKDIR/log"
|
||||
TIMDIR="$CHKDIR/timestamp"
|
||||
PGPORT="65432"
|
||||
PGLIB="$LIBDIR"
|
||||
PMPID=""
|
||||
PMOPTIONS=${PMOPTIONS:-"-o -F"}
|
||||
|
||||
export CHKDIR
|
||||
export PGDATA
|
||||
export PGLIB
|
||||
export LOGDIR
|
||||
export TIMDIR
|
||||
export PGPORT
|
||||
|
||||
# Needed by psql and pg_encoding (if you run multibyte).
|
||||
# I hope this covers all platforms with shared libraries,
|
||||
# otherwise feel free to cover your platform here as well.
|
||||
if [ "$LD_LIBRARY_PATH" ]; then
|
||||
old_LD_LIBRARY_PATH="$LD_LIBRARY_PATH"
|
||||
LD_LIBRARY_PATH="$LIBDIR:$old_LD_LIBRARY_PATH"
|
||||
else
|
||||
LD_LIBRARY_PATH="$LIBDIR"
|
||||
fi
|
||||
export LD_LIBRARY_PATH
|
||||
|
||||
# ----------
|
||||
# Unset locale settings
|
||||
# ----------
|
||||
|
||||
unset LC_COLLATE LC_CTYPE LC_MONETARY LC_MESSAGES LC_NUMERIC LC_TIME LC_ALL LANG LANGUAGE
|
||||
|
||||
# ----------
|
||||
# Get the commandline parameters
|
||||
# ----------
|
||||
hostname=$1
|
||||
shift
|
||||
extratests="$*"
|
||||
|
||||
# ----------
|
||||
# Special setting for Windows (no unix domain sockets)
|
||||
# ----------
|
||||
if [ "x$hostname" = "xwin" -o "x$hostname" = "xi386-pc-qnx" ]
|
||||
then
|
||||
HOSTLOC="-h localhost"
|
||||
USETCPIP="-i"
|
||||
else
|
||||
HOSTLOC=""
|
||||
USETCPIP=""
|
||||
fi
|
||||
|
||||
unset PGHOST
|
||||
|
||||
# ----------
|
||||
# Determine if echo -n works
|
||||
# ----------
|
||||
if echo '\c' | grep -s c >/dev/null 2>&1
|
||||
then
|
||||
ECHO_N="echo -n"
|
||||
ECHO_C=""
|
||||
else
|
||||
ECHO_N="echo"
|
||||
ECHO_C='\c'
|
||||
fi
|
||||
|
||||
# ----------
|
||||
# Set backend timezone and datestyle explicitly
|
||||
#
|
||||
# To pass the horology test in its current form, the postmaster must be
|
||||
# started with PGDATESTYLE=ISO, while the frontend must be started with
|
||||
# PGDATESTYLE=Postgres. We set the postmaster values here and change
|
||||
# to the frontend settings after the postmaster has been started.
|
||||
# ----------
|
||||
PGTZ="PST8PDT"; export PGTZ
|
||||
PGDATESTYLE="ISO,US"; export PGDATESTYLE
|
||||
|
||||
# ----------
|
||||
# The SQL shell to use during this test
|
||||
# ----------
|
||||
FRONTEND="$BINDIR/psql $HOSTLOC -a -q -X"
|
||||
|
||||
# ----------
|
||||
# Scan resultmap file to find which platform-specific expected files to use.
|
||||
# The format of each line of the file is
|
||||
# testname/hostnamepattern=substitutefile
|
||||
# where the hostnamepattern is evaluated per the rules of expr(1) --- namely,
|
||||
# it is a standard regular expression with an implicit ^ at the start.
|
||||
#
|
||||
# The tempfile hackery is needed because some shells will run the loop
|
||||
# inside a subshell, whereupon shell variables set therein aren't seen
|
||||
# outside the loop :-(
|
||||
# ----------
|
||||
TMPFILE="matches.$$"
|
||||
cat /dev/null > $TMPFILE
|
||||
while read LINE
|
||||
do
|
||||
HOSTPAT=`expr "$LINE" : '.*/\(.*\)='`
|
||||
if [ `expr "$hostname" : "$HOSTPAT"` -ne 0 ]
|
||||
then
|
||||
# remove hostnamepattern from line so that there are no shell
|
||||
# wildcards in SUBSTLIST; else later 'for' could expand them!
|
||||
TESTNAME=`expr "$LINE" : '\(.*\)/'`
|
||||
SUBST=`echo "$LINE" | sed 's/^.*=//'`
|
||||
echo "$TESTNAME=$SUBST" >> $TMPFILE
|
||||
fi
|
||||
done <resultmap
|
||||
SUBSTLIST=`cat $TMPFILE`
|
||||
rm -f $TMPFILE
|
||||
|
||||
# ----------
|
||||
# Catch SIGINT and SIGTERM to shutdown the postmaster
|
||||
# ----------
|
||||
trap ' echo ""
|
||||
echo ""
|
||||
echo "user abort ..."
|
||||
if [ ! -z "$PMPID" ]
|
||||
then
|
||||
echo "Signalling postmaster with PID $PMPID to shutdown immediately"
|
||||
kill -2 $PMPID
|
||||
wait $PMPID
|
||||
echo ""
|
||||
fi
|
||||
echo ""
|
||||
LD_LIBRARY_PATH="$old_LD_LIBRARY_PATH"
|
||||
exit 1
|
||||
' 2 15
|
||||
|
||||
# ----------
|
||||
# Prepare a clean check directory
|
||||
# ----------
|
||||
if [ -d $CHKDIR ]
|
||||
then
|
||||
echo "=============== Removing old ./tmp_check directory ... ================"
|
||||
rm -rf $CHKDIR
|
||||
fi
|
||||
|
||||
echo "=============== Create ./tmp_check directory ================"
|
||||
mkdir -p $CHKDIR
|
||||
mkdir -p $LOGDIR
|
||||
mkdir -p results
|
||||
|
||||
|
||||
# ----------
|
||||
# Install this build into ./tmp/check
|
||||
# ----------
|
||||
echo "=============== Installing new build into ./tmp_check ================"
|
||||
${MAKE:-gmake} -C ../../.. POSTGRESDIR=$CHKDIR prefix=$CHKDIR install >$LOGDIR/install.log 2>&1
|
||||
|
||||
if [ $? -ne 0 ]
|
||||
then
|
||||
echo ""
|
||||
echo "ERROR: Check installation failed - cannot continue"
|
||||
echo "Please examine $LOGDIR/install.log"
|
||||
echo "for the reason."
|
||||
echo ""
|
||||
exit 2
|
||||
fi
|
||||
|
||||
|
||||
# ----------
|
||||
# Change the path so that all binaries from the current
|
||||
# build are first candidates
|
||||
# ----------
|
||||
PATH=$CHKDIR/bin:$PATH
|
||||
export PATH
|
||||
|
||||
|
||||
# ----------
|
||||
# Run initdb to initialize a database system in ./tmp_check
|
||||
# ----------
|
||||
echo "=============== Initializing check database instance ================"
|
||||
initdb -D $PGDATA -L $CHKDIR/share --noclean >$LOGDIR/initdb.log 2>&1
|
||||
|
||||
if [ $? -ne 0 ]
|
||||
then
|
||||
echo ""
|
||||
echo "ERROR: Check initdb failed - cannot continue"
|
||||
echo "Please examine $LOGDIR/initdb.log"
|
||||
echo "for the reason."
|
||||
echo ""
|
||||
exit 3
|
||||
fi
|
||||
|
||||
|
||||
# ----------
|
||||
# Start a postmaster for the check instance and give
|
||||
# him some time to pass the WAL recovery code.
|
||||
#----------
|
||||
echo "=============== Starting regression postmaster ================"
|
||||
postmaster -D $PGDATA $USETCPIP -p $PGPORT $PMOPTIONS >$LOGDIR/postmaster.log 2>&1 &
|
||||
PMPID=$!
|
||||
sleep 2
|
||||
|
||||
if kill -0 $PMPID >/dev/null 2>&1
|
||||
then
|
||||
echo "Regression postmaster is running - PID=$PMPID PGPORT=$PGPORT"
|
||||
else
|
||||
echo ""
|
||||
echo "ERROR: Regression postmaster did not startup."
|
||||
echo "Please examine $LOGDIR/postmaster.log"
|
||||
echo "for the reason."
|
||||
echo ""
|
||||
exit 4
|
||||
fi
|
||||
|
||||
# ----------
|
||||
# Set frontend timezone and datestyle explicitly
|
||||
# ----------
|
||||
PGTZ="PST8PDT"; export PGTZ
|
||||
PGDATESTYLE="Postgres,US"; export PGDATESTYLE
|
||||
|
||||
# ----------
|
||||
# Create the regression database
|
||||
# ----------
|
||||
echo "=============== Creating regression database... ================"
|
||||
if [ -n "$MULTIBYTE" ];then
|
||||
mbtests=`echo $MULTIBYTE | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
|
||||
PGCLIENTENCODING="$MULTIBYTE"
|
||||
export PGCLIENTENCODING
|
||||
ENCODINGOPT="-E $MULTIBYTE"
|
||||
else
|
||||
mbtests=""
|
||||
unset PGCLIENTENCODING
|
||||
ENCODINGOPT=""
|
||||
fi
|
||||
createdb $ENCODINGOPT $HOSTLOC regression
|
||||
if [ $? -ne 0 ]; then
|
||||
echo createdb failed
|
||||
kill -15 $PMPID
|
||||
exit 1
|
||||
fi
|
||||
|
||||
|
||||
# ----------
|
||||
# Install the PL/pgSQL language in it
|
||||
# ----------
|
||||
if [ "x$hostname" != "xi386-pc-qnx" ]; then
|
||||
echo "=============== Installing PL/pgSQL... ================"
|
||||
createlang -L $LIBDIR $HOSTLOC plpgsql regression
|
||||
if [ $? -ne 0 -a $? -ne 2 ]; then
|
||||
echo createlang failed
|
||||
kill -15 $PMPID
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
|
||||
|
||||
# ----------
|
||||
# Run the regression tests specified in the ./sql/run_check.tests file
|
||||
# ----------
|
||||
echo "=============== Running regression queries... ================"
|
||||
cat /dev/null > regression.diffs
|
||||
cat /dev/null > regress.out
|
||||
|
||||
if [ "x$hostname" = "xi386-pc-qnx" ]; then
|
||||
DIFFOPT="-b"
|
||||
else
|
||||
DIFFOPT="-w"
|
||||
fi
|
||||
|
||||
TESTS=./sql/run_check.tests
|
||||
lno=0
|
||||
(
|
||||
cat $TESTS
|
||||
for name in $extratests ; do
|
||||
echo "test $name"
|
||||
done
|
||||
) | while read line ; do
|
||||
|
||||
# ----------
|
||||
# Count line numbers and skip comments and empty lines
|
||||
# ----------
|
||||
lno=`expr $lno + 1`
|
||||
line=`echo $line | sed -e 's/[ ]*#.*//'`
|
||||
if [ -z "$line" ]
|
||||
then
|
||||
continue
|
||||
fi
|
||||
|
||||
# ----------
|
||||
# Extract the type keyword and the name
|
||||
# ----------
|
||||
type=`echo $line | awk '{print $1;}'`
|
||||
name=`echo $line | awk '{print $2;}'`
|
||||
|
||||
case $type in
|
||||
parallel) # ----------
|
||||
# This is the beginning of a new group of
|
||||
# tests that should be executed in parallel.
|
||||
# ----------
|
||||
parlist=
|
||||
parlno=$lno
|
||||
pargroup=$name
|
||||
parntests=0
|
||||
parpar=0
|
||||
while read line ; do
|
||||
# ----------
|
||||
# Again count line numbers and skip comments
|
||||
# ----------
|
||||
lno=`expr $lno + 1`
|
||||
line=`echo $line | sed -e 's/[ ]*#.*//'`
|
||||
if [ -z "$line" ]
|
||||
then
|
||||
continue
|
||||
fi
|
||||
|
||||
# ----------
|
||||
# Collect and count the number of tests to
|
||||
# execute parallel
|
||||
# ----------
|
||||
type=`echo $line | awk '{print $1;}'`
|
||||
name=`echo $line | awk '{print $2;}'`
|
||||
|
||||
if [ "$type" = "endparallel" ]
|
||||
then
|
||||
parend=1
|
||||
break
|
||||
fi
|
||||
if [ "$type" = "parallel" ]
|
||||
then
|
||||
echo ""
|
||||
echo "$TESTS line $lno: parallel cannot be nested"
|
||||
echo ""
|
||||
exit 5
|
||||
fi
|
||||
if [ "$type" != "test" ]
|
||||
then
|
||||
echo ""
|
||||
echo "$TESTS line $lno: syntax error"
|
||||
echo ""
|
||||
exit 5
|
||||
fi
|
||||
|
||||
if [ ! -z "$parlist" ]
|
||||
then
|
||||
parlist="$parlist "
|
||||
fi
|
||||
|
||||
parlist="${parlist}$name"
|
||||
parntests=`expr $parntests + 1`
|
||||
done
|
||||
|
||||
# ----------
|
||||
# Check that we found a matching 'endparallel'
|
||||
# ----------
|
||||
if [ $parend -eq 0 ]
|
||||
then
|
||||
echo ""
|
||||
echo "$TESTS at EOF: missing endparallel for line $parlno"
|
||||
echo ""
|
||||
exit 5
|
||||
fi
|
||||
|
||||
# ----------
|
||||
# Tell what we're doing and then start them all, using
|
||||
# a subshell for each one. The subshell is just there
|
||||
# to print the test name when it finishes, so one can
|
||||
# see which tests finish fastest. We do NOT run the
|
||||
# ok/failed comparison tests in the parallel subshells,
|
||||
# because we want the diffs (if any) to come out in a
|
||||
# predictable order --- and certainly not interleaved!
|
||||
# ----------
|
||||
gnam=`echo "$pargroup ($parntests tests)" | awk '{printf "%-26.26s", $0;}'`
|
||||
echo "parallel $gnam ..."
|
||||
|
||||
for name in $parlist
|
||||
do
|
||||
(
|
||||
$FRONTEND regression < sql/${name}.sql \
|
||||
> results/${name}.out 2>&1
|
||||
$ECHO_N " $name" $ECHO_C
|
||||
) &
|
||||
done
|
||||
wait
|
||||
echo ""
|
||||
|
||||
# ----------
|
||||
# Setup status information for the diff check below
|
||||
# ----------
|
||||
checklist="$parlist"
|
||||
checkpname=1
|
||||
;;
|
||||
|
||||
test) # ----------
|
||||
# This is a test that must be executed serialized
|
||||
# ----------
|
||||
pnam=`echo $name | awk '{printf "%-20.20s", $1;}'`
|
||||
$ECHO_N "sequential test $pnam ... " $ECHO_C
|
||||
|
||||
$FRONTEND regression < sql/${name}.sql \
|
||||
> results/${name}.out 2>&1
|
||||
|
||||
# ----------
|
||||
# Setup status information for the diff check below
|
||||
# ----------
|
||||
checklist="$name"
|
||||
checkpname=0
|
||||
;;
|
||||
|
||||
*) # ----------
|
||||
# And this is space for extensions
|
||||
# ----------
|
||||
echo ""
|
||||
echo "$TESTS line $lno: syntax error"
|
||||
echo ""
|
||||
exit 5
|
||||
;;
|
||||
esac
|
||||
|
||||
# ----------
|
||||
# One single or a group of parallel tests has been completed.
|
||||
# Check the output against the expected results.
|
||||
#
|
||||
# On the fly we create run_check.out and regress.out in the
|
||||
# old format, so checkresults will still find the proper
|
||||
# information.
|
||||
# ----------
|
||||
for name in $checklist ; do
|
||||
if [ $checkpname -ne 0 ]
|
||||
then
|
||||
pnam=`echo $name | awk '{printf "%-20.20s", $1;}'`
|
||||
$ECHO_N " test $pnam ... " $ECHO_C
|
||||
fi
|
||||
|
||||
#
|
||||
# Check list extracted from resultmap to see if we should compare
|
||||
# to a system-specific expected file.
|
||||
# There shouldn't be multiple matches, but take the last if there are.
|
||||
#
|
||||
EXPECTED="expected/${name}.out"
|
||||
for LINE in $SUBSTLIST
|
||||
do
|
||||
if [ `expr "$LINE" : "$name="` -ne 0 ]
|
||||
then
|
||||
SUBST=`echo "$LINE" | sed 's/^.*=//'`
|
||||
EXPECTED="expected/${SUBST}.out"
|
||||
fi
|
||||
done
|
||||
|
||||
if [ `diff ${DIFFOPT} ${EXPECTED} results/${name}.out | wc -l` -ne 0 ]
|
||||
then
|
||||
( diff ${DIFFOPT} -C3 ${EXPECTED} results/${name}.out ; \
|
||||
echo "" ; \
|
||||
echo "----------------------" ; \
|
||||
echo "" ; \
|
||||
) >> regression.diffs
|
||||
echo "FAILED"
|
||||
echo "$name .. failed" >> regress.out
|
||||
else
|
||||
echo "ok"
|
||||
echo "$name .. ok" >> regress.out
|
||||
fi
|
||||
done
|
||||
done | tee run_check.out 2>&1
|
||||
|
||||
# ----------
|
||||
# Finally kill the postmaster we started
|
||||
# ----------
|
||||
echo "=============== Terminating regression postmaster ================"
|
||||
kill -15 $PMPID
|
||||
|
||||
LD_LIBRARY_PATH="$old_LD_LIBRARY_PATH"
|
||||
|
||||
exit 0
|
@ -1,136 +0,0 @@
|
||||
# ----------
|
||||
# The first group of parallel test
|
||||
# ----------
|
||||
parallel group1
|
||||
test boolean
|
||||
test char
|
||||
test name
|
||||
test varchar
|
||||
test text
|
||||
test int2
|
||||
test int4
|
||||
test int8
|
||||
test oid
|
||||
test float4
|
||||
test float8
|
||||
test numeric
|
||||
endparallel
|
||||
|
||||
test strings # Depends on things setup during char, varchar and text
|
||||
test numerology # Depends on int2, int4, int8, float4, float8
|
||||
|
||||
# ----------
|
||||
# The second group of parallel test
|
||||
# ----------
|
||||
parallel group2
|
||||
test point
|
||||
test lseg
|
||||
test box
|
||||
test path
|
||||
test polygon
|
||||
test circle
|
||||
test date
|
||||
test time
|
||||
test timestamp
|
||||
test interval
|
||||
test abstime
|
||||
test reltime
|
||||
test tinterval
|
||||
test inet
|
||||
test comments
|
||||
test oidjoins
|
||||
test type_sanity
|
||||
test opr_sanity
|
||||
endparallel
|
||||
|
||||
test geometry # Depends on point, lseg, box, path, polygon and circle
|
||||
test horology # Depends on interval, timestamp, reltime and abstime
|
||||
|
||||
# ----------
|
||||
# These four each depend on the previous one
|
||||
# ----------
|
||||
test create_function_1
|
||||
test create_type
|
||||
test create_table
|
||||
test create_function_2
|
||||
|
||||
# ----------
|
||||
# Load huge amounts of data
|
||||
# We should split the data files into single files and then
|
||||
# execute two copy tests parallel, to check that copy itself
|
||||
# is concurrent safe.
|
||||
# ----------
|
||||
test copy
|
||||
|
||||
# ----------
|
||||
# The third group of parallel test
|
||||
# ----------
|
||||
parallel group3
|
||||
test constraints
|
||||
test triggers
|
||||
test create_misc
|
||||
test create_aggregate
|
||||
test create_operator
|
||||
test create_index
|
||||
test inherit
|
||||
endparallel
|
||||
|
||||
test create_view # Depends on the above
|
||||
|
||||
# ----------
|
||||
# sanity_check does a vacuum, affecting the sort order of SELECT *
|
||||
# results. So it should not run parallel to other tests.
|
||||
# ----------
|
||||
test sanity_check
|
||||
|
||||
# ----------
|
||||
# Believe it or not, select creates a table, subsequent
|
||||
# tests need.
|
||||
# ----------
|
||||
test errors
|
||||
test select
|
||||
|
||||
# ----------
|
||||
# The fourth group of parallel test
|
||||
# ----------
|
||||
parallel group4
|
||||
test select_into
|
||||
test select_distinct
|
||||
test select_distinct_on
|
||||
test select_implicit
|
||||
test select_having
|
||||
test subselect
|
||||
test union
|
||||
test case
|
||||
test join
|
||||
test aggregates
|
||||
test transactions
|
||||
test random
|
||||
test portals
|
||||
test arrays
|
||||
test btree_index
|
||||
test hash_index
|
||||
endparallel
|
||||
|
||||
test misc
|
||||
|
||||
# ----------
|
||||
# The fifth group of parallel test
|
||||
# ----------
|
||||
parallel group5
|
||||
test select_views
|
||||
test alter_table
|
||||
test portals_p2
|
||||
test rules
|
||||
test foreign_key
|
||||
endparallel
|
||||
|
||||
# ----------
|
||||
# The sixth group of parallel test
|
||||
# ----------
|
||||
parallel group6
|
||||
test limit
|
||||
test plpgsql # Cannot run concurrently to rules
|
||||
test temp
|
||||
endparallel
|
||||
|
@ -1,73 +0,0 @@
|
||||
boolean
|
||||
char
|
||||
name
|
||||
varchar
|
||||
text
|
||||
strings
|
||||
int2
|
||||
int4
|
||||
int8
|
||||
oid
|
||||
float4
|
||||
float8
|
||||
numerology
|
||||
point
|
||||
lseg
|
||||
box
|
||||
path
|
||||
polygon
|
||||
circle
|
||||
geometry
|
||||
date
|
||||
time
|
||||
timestamp
|
||||
interval
|
||||
abstime
|
||||
reltime
|
||||
tinterval
|
||||
horology
|
||||
inet
|
||||
comments
|
||||
oidjoins
|
||||
type_sanity
|
||||
opr_sanity
|
||||
create_function_1
|
||||
create_type
|
||||
create_table
|
||||
create_function_2
|
||||
constraints
|
||||
triggers
|
||||
copy
|
||||
create_misc
|
||||
create_aggregate
|
||||
create_operator
|
||||
create_view
|
||||
create_index
|
||||
sanity_check
|
||||
errors
|
||||
select
|
||||
select_into
|
||||
select_distinct
|
||||
select_distinct_on
|
||||
select_implicit
|
||||
select_having
|
||||
subselect
|
||||
union
|
||||
case
|
||||
join
|
||||
aggregates
|
||||
transactions
|
||||
random
|
||||
portals
|
||||
misc
|
||||
arrays
|
||||
btree_index
|
||||
hash_index
|
||||
select_views
|
||||
alter_table
|
||||
portals_p2
|
||||
rules
|
||||
limit
|
||||
plpgsql
|
||||
temp
|
||||
numeric
|
Loading…
x
Reference in New Issue
Block a user