Testsuite: interlock Postgres server startup
authorJeremy Harris <jgh146exb@wizmail.org>
Wed, 17 Jan 2018 20:23:31 +0000 (20:23 +0000)
committerJeremy Harris <jgh146exb@wizmail.org>
Wed, 17 Jan 2018 20:33:33 +0000 (20:33 +0000)
test/Makefile.in
test/runtest
test/scripts/2620-Postgresql/2620
test/stdout/2620

index f67f8d1f590de1f2512ca05655ba88bc6f25f747..dbf6d809c3519ab079b4bd7a5c242d370a6b84ca 100644 (file)
@@ -27,7 +27,7 @@ all:            binaries sysbinaries
 binaries:      $(BINARIES)
 
 sysbinaries:   FRC
-               sh -x bin/locate.sh initdb postgres pg_ctl mysqld
+               bin/locate.sh initdb postgres pg_ctl mysqld
                ls -la bin.sys
 
 # Compile and link the programs:
index 89625e90deb032633d9076adf589abfcbadb0cab..484b799e95251ec060119002a196ba81f292bd29 100755 (executable)
@@ -661,7 +661,7 @@ RESET_AFTER_EXTRA_LINE_READ:
 
   s/\bgid=\d+/gid=gggg/;
   s/\begid=\d+/egid=gggg/;
-  s/\bpid=\d+/pid=pppp/;
+  s/\b(pid=|PID: )\d+/$1pppp/;
   s/\buid=\d+/uid=uuuu/;
   s/\beuid=\d+/euid=uuuu/;
   s/set_process_info:\s+\d+/set_process_info: pppp/;
@@ -922,6 +922,9 @@ RESET_AFTER_EXTRA_LINE_READ:
 
     # subsecond timstamp info in reported header-files
     s/^(-received_time_usec \.)\d{6}$/$1uuuuuu/;
+
+    # Postgres server takes varible time to shut down
+    s/^waiting for server to shut down\.+ done$/waiting for server to shut down.... done/;
     }
 
   # ======== stderr ========
index 1f8f3abe1b707912d2ca2b82b06e92940775904c..a96b719308a1f5b67f4073788978d1bd6556d8b7 100644 (file)
@@ -4,6 +4,7 @@
 #
 # first, populate a DB to test against
 sudo rm -fr DIR/pgsql
+echo Starting DB server
 perl
 system 'DIR/bin.sys/initdb -D DIR/pgsql/data';
 ****
@@ -12,7 +13,9 @@ background
 DIR/bin.sys/postgres -D DIR/pgsql/data -p PORT_N -k DIR/pgsql
 ****
 sleep 1
+echo Waiting for DB server
 perl
+system 'DIR/bin.sys/pg_ctl -w -D DIR/pgsql/data status';
 system 'createdb -h localhost -p PORT_N test';
 system 'psql -h localhost -p PORT_N -d test \
  -c "CREATE TABLE them ( name text, id text ); \
@@ -25,6 +28,7 @@ system 'psql -h localhost -p PORT_N -d test \
      INSERT INTO them VALUES ( CHR(39) || \'stquot\', \'quote1\' );" \
  ';
 ****
+echo Populated DB server
 #
 # now, the tests
 exim -d-all+lookup -be
@@ -62,7 +66,8 @@ ${lookup pgsql {select name from them where id='ph10';}}
 ****
 #
 perl
-system 'pg_ctl stop -D DIR/pgsql/data -m immediate';
+system 'DIR/bin.sys/pg_ctl stop -D DIR/pgsql/data -m immediate';
 ****
+sleep 2
 killdaemon
 sudo rm -fr DIR/pgsql
index 4f907c1bcfda05afb620471491f6bd339459f46b..74b91abee14b3bb314df611eb6a8461fb24c7c44 100644 (file)
@@ -1,3 +1,5 @@
+pg_ctl: server is running (PID: pppp)
+/usr/bin/postgres "-D" "TESTSUITE/pgsql/data" "-p" "1223" "-k" "TESTSUITE/pgsql"
 INSERT 0 1
 > Philip Hazel
 > Philip Hazel