mirror of https://github.com/postgres/postgres
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…
Reference in new issue