separating database engine and cache tests
[csql.git] / test / cache / FailOver / test006b.ksh
blob997f8d1c4a28ec299d28e1a71c9e0e22fa42ae00
1 #!/bin/sh
3 # 6.After connect and prepare, csql goes down. it should do insert for cached tables and MySQL in MySQL directly
4 # non cached csql tables will fail.
6 #Run this test only under csql/test or on this directory.
7 #Otherwise, it may fail
9 CSQL_CONF=${PWD}/cache/FailOver/csql.conf
10 input=${PWD}/cache/FailOver/csqlinputt3.sql
11 REL_PATH=.
12 if [ -s "$input" -a -s "$CSQL_CONF" ]
13 then
14 REL_PATH=${PWD}/cache/FailOver
16 export CSQL_CONFIG_FILE=$REL_PATH/csql.conf
18 isql $DSN < $REL_PATH/mysqlinputtest1.sql >/dev/null 2>&1
19 echo "table t1(to be cached) inserted into target db"
20 # edit /tmp/csql/csqltable.conf
21 rm -f /tmp/csql/csqltable.conf /tmp/csql/csql.db
22 touch /tmp/csql/csqltable.conf /tmp/csql/csql.db
23 for (( a=1; a<2; a++ ))
25 echo "1:t$a"
26 done >> /tmp/csql/csqltable.conf
28 $CSQL_INSTALL_ROOT/bin/csqlserver -c >/dev/null 2>&1 &
29 pid=$!
30 sleep 5
31 echo "table t1 cached into csql"
33 isql $DSN < $REL_PATH/mysqlinputtest2.sql >/dev/null 2>&1
34 echo "table t2(not cached) inserted into target db"
35 $CSQL_INSTALL_ROOT/bin/csql -g -s $REL_PATH/csqlinputt3.sql >/dev/null 2>&1
36 echo "table t3 inserted into csql db"
38 ${REL_PATH}/insertprepcsqldown &
39 bgproc=$!
40 kill -9 $pid
41 ipcrm -M 1199 -M 2277
42 echo -e "csql server is down"
43 wait $bgproc
44 isql $DSN < $REL_PATH/dropall.sql >/dev/null 2>&1
45 rm -f /tmp/csql/csqltable.conf /tmp/csql/csql.db
46 touch /tmp/csql/csqltable.conf /tmp/csql/csql.db
47 exit 0;