Omit CVS Id. Update copyright year.
[idzebra-moved-to-github.git] / test / gils / timing1.sh
index c8ba247..7c83dd4 100755 (executable)
-# timing1.sh - tests that updates are reflected immediately
-# in the registers. Repeatedly modifies a record and counts hits.
-# Because of the timing aspect of this, if may fail at any time
-# or not at all. 
+#!/bin/sh
+# tests that updates are reflected immediately # in the registers.
+# Repeatedly modifies a record and counts hits.
+# Test 1: with good sleeps in every between - should pass always
 
-echo "Testing timings of updates"
-echo "  init..."
-rm -f idx.log log
-rm -f records/esdd000[12].grs # these should not be here, will be created later
-../../index/zebraidx -l idx.log init || exit 1
+srcdir=${srcdir:-"."}
 
-echo "  killing old server (if any)..."
-test -f zebrasrv.pid && kill -9 `cat zebrasrv.pid`
-rm -f zebrasrv.pid
-rm -f srv.log
-
-echo "  starting server..."
-../../index/zebrasrv -S -c zebra2.cfg -l srv.log tcp:@:9901 &
-sleep 1
-test -f zebrasrv.pid || exit 1
-
-echo "  update 1..."
-../../index/zebraidx -l idx.log -c zebra2.cfg update records || exit 1
-
-echo "  search 1..."
-../testclient localhost:9901 "@attr 1=4 utah" > log || exit 1
-grep "^Result count: 9$" log || exit 1
-
-echo "making a test record..."
-cp records/esdd0006.grs records/esdd0002.grs
-
-echo "  indexing it..."
-../../index/zebraidx -l idx.log -c zebra2.cfg update records || exit 1
-
-echo "  search 2..."
-../testclient localhost:9901 "@attr 1=4 utah" > log || exit 1
-grep "^Result count: 10$" log || exit 1
-echo "  1a: modifying a test record (xyz)..."
-sed 's/UTAH/XYZ/g' <records/esdd0002.grs >records/esdd0002x.grs
-mv records/esdd0002x.grs records/esdd0002.grs
-
-echo "    indexing it..."
-../../index/zebraidx -l idx.log -c zebra2.cfg update records || exit 1
-
-echo "    search 3..."
-../testclient localhost:9901 "@attr 1=4 utah" > log || exit 1
-echo "    checking..."
-grep "^Result count: 9$" log || exit 1
-
-echo "  1b: modifying the test record back (utah)..."
-sed 's/XYZ/UTAH/g' <records/esdd0002.grs >records/esdd0002x.grs
-mv records/esdd0002x.grs records/esdd0002.grs
-
-echo "    indexing it..."
-../../index/zebraidx -l idx.log -c zebra2.cfg update records || exit 1
-
-echo "    search 4..."
-../testclient localhost:9901 "@attr 1=4 utah" > log || exit 1
-echo "    checking..."
-grep "^Result count: 10$" log || exit 1
-
-echo "  2a: modifying the test record (xyz)..."
-sed 's/UTAH/XYZ/g' <records/esdd0002.grs >records/esdd0002x.grs
-mv records/esdd0002x.grs records/esdd0002.grs
-
-echo "    indexing it..."
-../../index/zebraidx -l idx.log -c zebra2.cfg update records || exit 1
-
-echo "    search 5..."
-../testclient localhost:9901 "@attr 1=4 utah" > log || exit 1
-echo "    checking..."
-grep "^Result count: 9$" log || exit 1
-
-echo "  2b: modifying the test record back (utah)..."
-sed 's/XYZ/UTAH/g' <records/esdd0002.grs >records/esdd0002x.grs
-mv records/esdd0002x.grs records/esdd0002.grs
-
-echo "    indexing it..."
-../../index/zebraidx -l idx.log -c zebra2.cfg update records || exit 1
-
-echo "    search 6..."
-../testclient localhost:9901 "@attr 1=4 utah" > log || exit 1
-echo "    checking..."
-grep "^Result count: 10$" log || exit 1
-
-
-echo "  3a: modifying the test record (xyz)..."
-sed 's/UTAH/XYZ/g' <records/esdd0002.grs >records/esdd0002x.grs
-mv records/esdd0002x.grs records/esdd0002.grs
-
-echo "    indexing it..."
-../../index/zebraidx -l idx.log -c zebra2.cfg update records || exit 1
-
-echo "    search 7..."
-../testclient localhost:9901 "@attr 1=4 utah" > log || exit 1
-echo "    checking..."
-grep "^Result count: 9$" log || exit 1
-
-echo "  3b: modifying the test record back (utah)..."
-sed 's/XYZ/UTAH/g' <records/esdd0002.grs >records/esdd0002x.grs
-mv records/esdd0002x.grs records/esdd0002.grs
+if [ "$srcdir" != "." ]
+    then
+    echo "Jumping over test"
+    exit 0
+fi
 
-echo "    indexing it..."
-../../index/zebraidx -l idx.log -c zebra2.cfg update records || exit 1
+LOG=timing1.log
 
-echo "    search 8..."
-../testclient localhost:9901 "@attr 1=4 utah" > log || exit 1
-echo "    checking..."
-grep "^Result count: 10$" log || exit 1
+rm -f $LOG
 
+echo "  init..." >>$LOG
 
-echo "stopping server..."
-test -f zebrasrv.pid || exit 1
-kill -9 `cat zebrasrv.pid` || exit 1
-rm -f idx.log log
-rm -f records/esdd000[12].grs 
-rm -f zebrasrv.pid
-rm -f srv.log
+# these should not be here, will be created later
+$srcdir/cleanrecords.sh
+
+
+../../index/zebraidx -c $srcdir/zebra2.cfg -l $LOG init || exit 1
+
+echo "  starting server..." >>$LOG
+../../index/zebrasrv -D -p z.pid -S -c $srcdir/zebra2.cfg -l $LOG unix:socket
+test -f z.pid || exit 1
+sleep 2
+
+echo "  update 1..." >>$LOG
+../../index/zebraidx -l $LOG -c $srcdir/zebra2.cfg update $srcdir/records || exit 1
+sleep 2
+
+echo "  search 1..." >>$LOG
+../api/testclient unix:socket "@attr 1=4 utah" > log || exit 1
+grep "^Result count: 9$" log >/dev/null || exit 1
+sleep 2
+
+echo "making a test record..." >>$LOG
+cp $srcdir/records/esdd0006.grs $srcdir/records/esdd0002.grs
+
+echo "  indexing it..." >>$LOG
+../../index/zebraidx -l $LOG -c $srcdir/zebra2.cfg update $srcdir/records || exit 1
+sleep 2
+
+echo "  search 2..." >>$LOG
+../api/testclient unix:socket "@attr 1=4 utah" > log || exit 1
+grep "^Result count: 10$" log >/dev/null || exit 1
+
+sleep 2
+echo "  1a: modifying a test record (xyz)..." >>$LOG
+sed 's/UTAH/XYZ/g' <$srcdir/records/esdd0002.grs >$srcdir/records/esdd0002x.grs
+mv $srcdir/records/esdd0002x.grs $srcdir/records/esdd0002.grs
+
+echo "    indexing it..." >>$LOG
+../../index/zebraidx -l $LOG -c $srcdir/zebra2.cfg update $srcdir/records || exit 1
+
+sleep 2
+echo "    search 3..." >>$LOG
+../api/testclient unix:socket "@attr 1=4 utah" > log || exit 1
+echo "    checking..." >>$LOG
+grep "^Result count: 9$" log >/dev/null || exit 1
+
+sleep 2
+echo "  1b: modifying the test record back (utah)..." >>$LOG
+sed 's/XYZ/UTAH/g' <$srcdir/records/esdd0002.grs >$srcdir/records/esdd0002x.grs
+mv $srcdir/records/esdd0002x.grs $srcdir/records/esdd0002.grs
+
+echo "    indexing it..." >>$LOG
+../../index/zebraidx -l $LOG -c $srcdir/zebra2.cfg update $srcdir/records || exit 1
+
+sleep 2
+echo "    search 4..." >>$LOG
+../api/testclient unix:socket "@attr 1=4 utah" > log || exit 1
+echo "    checking..." >>$LOG
+grep "^Result count: 10$" log >/dev/null || exit 1
+
+sleep 2
+echo "  2a: modifying the test record (xyz)..." >>$LOG
+sed 's/UTAH/XYZ/g' <$srcdir/records/esdd0002.grs >$srcdir/records/esdd0002x.grs
+mv $srcdir/records/esdd0002x.grs $srcdir/records/esdd0002.grs
+
+echo "    indexing it..." >>$LOG
+../../index/zebraidx -l $LOG -c $srcdir/zebra2.cfg update $srcdir/records || exit 1
+
+sleep 2
+echo "    search 5..." >>$LOG
+../api/testclient unix:socket "@attr 1=4 utah" > log || exit 1
+echo "    checking..." >>$LOG
+grep "^Result count: 9$" log >/dev/null || exit 1
+
+sleep 2
+echo "  2b: modifying the test record back (utah)..." >>$LOG
+sed 's/XYZ/UTAH/g' <$srcdir/records/esdd0002.grs >$srcdir/records/esdd0002x.grs
+mv $srcdir/records/esdd0002x.grs $srcdir/records/esdd0002.grs
+
+sleep 2
+echo "    indexing it..." >>$LOG
+../../index/zebraidx -l $LOG -c $srcdir/zebra2.cfg update $srcdir/records || exit 1
+
+sleep 2
+echo "    search 6..." >>$LOG
+../api/testclient unix:socket "@attr 1=4 utah" > log || exit 1
+echo "    checking..." >>$LOG
+grep "^Result count: 10$" log >/dev/null || exit 1
+
+sleep 2
+
+echo "  3a: modifying the test record (xyz)..." >>$LOG
+sed 's/UTAH/XYZ/g' <$srcdir/records/esdd0002.grs >$srcdir/records/esdd0002x.grs
+mv $srcdir/records/esdd0002x.grs $srcdir/records/esdd0002.grs
+
+sleep 2
+echo "    indexing it..." >>$LOG
+../../index/zebraidx -l $LOG -c $srcdir/zebra2.cfg update $srcdir/records || exit 1
+
+sleep 2
+echo "    search 7..." >>$LOG
+../api/testclient unix:socket "@attr 1=4 utah" > log || exit 1
+echo "    checking..." >>$LOG
+grep "^Result count: 9$" log >/dev/null || exit 1
+
+sleep 2
+echo "  3b: modifying the test record back (utah)..." >>$LOG
+sed 's/XYZ/UTAH/g' <$srcdir/records/esdd0002.grs >$srcdir/records/esdd0002x.grs
+mv $srcdir/records/esdd0002x.grs $srcdir/records/esdd0002.grs
+
+echo "    indexing it..." >>$LOG
+../../index/zebraidx -l $LOG -c $srcdir/zebra2.cfg update $srcdir/records || exit 1
+
+sleep 2
+echo "    search 8..." >>$LOG
+../api/testclient unix:socket "@attr 1=4 utah" > log || exit 1
+echo "    checking..." >>$LOG
+grep "^Result count: 10$" log >/dev/null || exit 1
+
+echo "stopping server..." >>$LOG
+test -f z.pid || exit 1
+kill `cat z.pid` || exit 1
+rm -f log
+$srcdir/cleanrecords.sh
+rm -f z.pid
 
-echo ok