adding DSN to csql.conf based on the cache test mode
[csql.git] / test / cache / Bidirectional / test013.ksh
blob48fc90e5d22e406f3535490342d0e505cbf15f8b
1 #!/bin/sh
2 # Test Case
3 # Create 100 table in target database with a integer primary key.
4 # Run trigger for all table. Make sure Log table is in target database
5 # Run cache server with bi-directional and cache flag true. Cache all tables.
6 # Insert record in each table in target database. Check in csql node records are inserted or not
7 # Author := Bijaya
9 input=${PWD}/cache/Bidirectional/mysqlcreatelogtable.sql
11 REL_PATH=.
12 if [ -s "$input" ]
13 then
14 REL_PATH=${PWD}/cache/Bidirectional
17 for((a=1; a<=100; a++))
19 echo "create table t$a(f1 int,f2 int,primary key(f1));"
20 echo "insert into t$a values(1,2);"
21 done >> $REL_PATH/create100table.sql
22 echo "table creation file created"
24 for((a=1; a<=100; a++))
26 echo "insert into t$a values(10,20);"
27 echo "insert into t$a values(11,21);"
28 echo "commit;"
29 done >> $REL_PATH/insertinto100.sql
30 echo "insert record file creates"
32 for((a=1; a<=100; a++))
34 echo "echo select * from t$a;"
35 echo "select * from t$a;"
36 done >>$REL_PATH/selectfrom100.sql
37 echo "select file created"
39 for((a=1; a<=100; a++))
41 echo "drop table t$a;"
42 done >>$REL_PATH/drop100table.sql
44 echo "use test;">>$REL_PATH/inserttrigger100.sql
45 for((a=1; a<=100; a++))
47 echo "drop trigger if exists triggerinsertt$a;"
48 echo "create trigger triggerinsertt$a AFTER INSERT on t$a FOR EACH ROW BEGIN Insert into csql_log_int (tablename, pkid, operation,cacheid) values ('t$a', NEW.f1, 1,1); End;"
49 done >> $REL_PATH/inserttrigger100.sql
50 echo "trigger file generated"
52 for((a=1; a<=100; a++))
54 echo "drop trigger if exists triggerinsertt$a;"
55 done >>$REL_PATH/dropinserttrigger.sql
56 echo "drop trigger file generated"
59 #cp $CSQL_CONFIG_FILE /tmp/csql.conf
60 #echo DSN=$DSN >>$CSQL_CONFIG_FILE
61 isql $DSN < $REL_PATH/mysqlcreatelogtable.sql >/dev/null 2>&1
62 echo Log table created in target DB
63 isql $DSN < $REL_PATH/create100table.sql >/dev/null
64 rm -f /tmp/csql/csqltable.conf /tmp/csql/csql.db
65 touch /tmp/csql/csqltable.conf /tmp/csql/csql.db
66 isql $DSN <$REL_PATH/inserttrigger100.sql >/dev/null
68 export CSQL_CONFIG_FILE=$REL_PATH/csql1.conf
69 echo DSN=$DSN >>$CSQL_CONFIG_FILE
71 for (( a=1; a<=100; a++ ))
73 echo "1:t$a NULL NULL NULL"
74 done >> /tmp/csql/csqltable.conf
76 $CSQL_INSTALL_ROOT/bin/csqlserver -c >/dev/null 2>&1 &
77 pid=$!
78 sleep 30
79 echo "server started"
81 $CSQL_INSTALL_ROOT/bin/csql -s $REL_PATH/selectfrom100.sql
82 if [ $? -ne 0 ]
83 then
84 echo "unable to locate cache 1"
85 isql $DSN < ${REL_PATH}/drop100table.sql >/dev/null 2>&1
86 rm -f $REL_PATH/create100table.sql
87 rm -f $REL_PATH/insertinto100.sql
88 rm -f $REL_PATH/selectfrom100.sql
89 rm -f $REL_PATH/drop100table.sql
90 rm -f $REL_PATH/inserttrigger100.sql
91 rm -f $REL_PATH/dropinserttrigger.sql
92 # cp /tmp/csql.conf $CSQL_CONFIG_FILE
93 exit 1
96 echo "Insert some record in target database"
97 isql $DSN < ${REL_PATH}/insertinto100.sql >/dev/null 2>&1
98 sleep 30
100 echo "Records in csql after insert in target DB"
101 $CSQL_INSTALL_ROOT/bin/csql -s $REL_PATH/selectfrom100.sql
103 $CSQL_INSTALL_ROOT/bin/csql -s $REL_PATH/drop100table.sql > /dev/null 2>&1
104 isql $DSN < ${REL_PATH}/drop100table.sql >/dev/null 2>&1
105 rm -f /tmp/csql/csqltable.conf /tmp/csql/csql.db
106 touch /tmp/csql/csqltable.conf /tmp/csql/csql.db
107 isql $DSN < $REL_PATH/dropinserttrigger.sql >/dev/null 2>&1
108 isql $DSN < $REL_PATH/mysqldeletelogtable.sql >/dev/null 2>&1
109 kill -2 $pid
110 ipcrm -M 4000 -M 4500
112 rm -f $REL_PATH/create100table.sql
113 rm -f $REL_PATH/insertinto100.sql
114 rm -f $REL_PATH/selectfrom100.sql
115 rm -f $REL_PATH/drop100table.sql
116 rm -f $REL_PATH/inserttrigger100.sql
117 rm -f $REL_PATH/dropinserttrigger.sql
118 # cp /tmp/csql.conf $CSQL_CONFIG_FILE
119 exit 0;