adding test scripts
[csql.git] / test / cache / Bidirectional / test011.ksh
blob67faa8b34eda9ae43992043093f61d27d3d1d80c
1 #!/bin/ksh
2 # Test Case
4 # Bi-directional mutiple cache node test
5 # Two Cache Node and t1 and t2 table to be cached
6 # Delete opration in Target database
8 input=${PWD}/cache/Bidirectional/mysqlcreatelogtable.sql
10 REL_PATH=.
11 if [ -s "$input" ]
12 then
13 REL_PATH=${PWD}/cache/Bidirectional
16 rm -f /tmp/csql.conf
17 cp $REL_PATH/csql.conf /tmp
18 export CSQL_CONFIG_FILE=/tmp/csql.conf
19 echo DSN=$DSN >>$CSQL_CONFIG_FILE
20 DS="$DSN $DBUSER $PASSWORD"
21 rm -f /tmp/csql/csqlds.conf
22 touch /tmp/csql/csqlds.conf
23 $CSQL_INSTALL_ROOT/bin/csqlds -U $DBUSER -P $PASSWORD -D $DSN -N $TDB -a
24 if [ $? -ne 0 ]
25 then
26 exit 1;
28 if [ "$DSN" = "myodbc3" ]
29 then
30 LOG_FILE=$REL_PATH/mysqlcreatelogtable.sql
31 TRI_FILE1=$REL_PATH/trigger.sql
32 TRI_FILE2=$REL_PATH/trigger1.sql
33 elif [ "$DSN" = "psql" ]
34 then
35 LOG_FILE=$REL_PATH/psqlcreatelogtable.sql
36 TRI_FILE1=$REL_PATH/trigger.psql
37 TRI_FILE2=$REL_PATH/trigger1.psql
38 elif [ "$DSN" = "oracle" ]
39 then
40 LOG_FILE=$REL_PATH/oraclecreatelogtable.sql
41 TRI_FILE1=$REL_PATH/triggermul.oracle
42 TRI_FILE2=$REL_PATH/trigger1mul.oracle
43 elif [ "$DSN" = "sybase" ]
44 then
45 LOG_FILE=$REL_PATH/sybasecreatelogtable.sql
46 TRI_FILE1=$REL_PATH/trigger.sybase
47 TRI_FILE2=$REL_PATH/trigger1.sybase
48 elif [ "$DSN" = "db2" ]
49 then
50 LOG_FILE=$REL_PATH/db2createlogtable.sql
51 TRI_FILE1=$REL_PATH/trigger.db2
52 TRI_FILE2=$REL_PATH/trigger1.db2
53 else
54 LOG_FILE=
55 TRI_FILE1=
56 TRI_FILE2=
59 #echo $DS
61 isql $DS < $LOG_FILE >/dev/null 2>&1
62 if [ $? -ne 0 ]
63 then
64 echo "DSN is not set for target db"
65 exit 1
68 echo table csql_log_int is created with records in target db
70 isql $DS < $REL_PATH/create.sql >/dev/null 2>&1
71 rm -f /tmp/csql/csqltable.conf
72 touch /tmp/csql/csqltable.conf
73 isql $DS < $TRI_FILE1 >/dev/null
74 isql $DS < $TRI_FILE2 >/dev/null
77 $CSQL_INSTALL_ROOT/bin/csqlserver >/dev/null 2>&1 &
78 pid=$!
79 sleep 5
80 echo "server 1 started"
81 for a in 1 2
83 $CSQL_INSTALL_ROOT/bin/cachetable -t t$a -d $DSN
84 if [ $? -ne 0 ]
85 then
86 kill `ps -ef | grep csqlcacheserver | awk -F" " '{ print $2 }'`
87 kill -9 $pid
88 ipcrm -M 4000 -M 4500
89 exit 3;
91 sleep 2
92 done
95 echo "cache node 2"
96 $CSQL_INSTALL_ROOT/bin/csql -s $REL_PATH/select.sql
97 if [ $? -ne 0 ]
98 then
99 echo "unable to locate cache 1"
100 isql $DS < $REL_PATH/mysqldeletelogtable.sql >/dev/null 2>&1
101 kill `ps -ef | grep csqlcacheserver | awk -F" " '{ print $2 }'`
102 kill -9 $pid
103 ipcrm -M 4000 -M 4500
104 exit 3
106 mkdir /tmp/csql1 >/dev/null 2>&1
107 rm -f /tmp/csql1/csqltable.conf
108 touch /tmp/csql1/csqltable.conf
110 rm /tmp/csql1.conf
111 cp $REL_PATH/conf/csql.conf /tmp/csql1.conf
112 export CSQL_CONFIG_FILE=/tmp/csql1.conf
113 echo DSN=$DSN >>$CSQL_CONFIG_FILE
114 $CSQL_INSTALL_ROOT/bin/csqlserver >/dev/null 2>&1 &
115 pid1=$!
116 sleep 5
117 echo "server 2 started"
118 for a in 1 2
120 $CSQL_INSTALL_ROOT/bin/cachetable -t t$a -d $DSN
121 if [ $? -ne 0 ]
122 then
123 kill `ps -ef | grep csqlcacheserver | awk -F" " '{ print $2 }'`
124 kill -9 $pid $pid1
125 ipcrm -M 4000 -M 4500 -M 5000 -M 5500
126 isql $DS < ${REL_PATH}/mysqldeletelogtable.sql >/dev/null 2>&1
127 isql $DS < ${REL_PATH}/drop.sql >/dev/null 2>&1
128 exit 5;
130 sleep 2
131 done
133 echo "cache node 1"
134 $CSQL_INSTALL_ROOT/bin/csql -s $REL_PATH/select.sql
135 if [ $? -ne 0 ]
136 then
137 kill `ps -ef | grep csqlcacheserver | awk -F" " '{ print $2 }'`
138 kill -9 $pid $pid1
139 ipcrm -M 4000 -M 4500 -M 5000 -M 5500
140 echo "unable to locate cache 1"
141 isql $DS < $REL_PATH/mysqldeletelogtable.sql >/dev/null 2>&1
142 exit 4
144 echo "Delete some record in target database"
145 isql $DS < ${REL_PATH}/delete.sql > /dev/null 2>&1
146 sleep 15
147 echo "cache node 1"
148 $CSQL_INSTALL_ROOT/bin/csql -s $REL_PATH/select.sql
150 export CSQL_CONFIG_FILE=/tmp/csql.conf
151 echo "cache node 2"
152 $CSQL_INSTALL_ROOT/bin/csql -s $REL_PATH/select.sql
154 $CSQL_INSTALL_ROOT/bin/csql -s $REL_PATH/drop.sql > /dev/null 2>&1
155 isql $DS < ${REL_PATH}/drop.sql >/dev/null 2>&1
156 rm -f /tmp/csql/csqltable.conf
157 touch /tmp/csql/csqltable.conf
158 rm -f /tmp/csql1/csqltable.conf
159 touch /tmp/csql1/csqltable.conf
160 isql $DS < $REL_PATH/mysqldeletelogtable.sql >/dev/null 2>&1
161 kill `ps -ef | grep csqlcacheserver | awk -F" " '{ print $2 }'`
162 kill -9 $pid $pid1
163 ipcrm -M 4000 -M 4500 -M 5000 -M 5500
164 exit 0;