adding test scripts
[csql.git] / test / cache / Bidirectional / test009.ksh
blob59075392be087a864835766d5fc7d9c049d933dd
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 # Update 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
69 isql $DS < $REL_PATH/create.sql >/dev/null 2>&1
70 rm -f /tmp/csql/csqltable.conf
71 touch /tmp/csql/csqltable.conf
72 isql $DS < $TRI_FILE1 >/dev/null
73 isql $DS < $TRI_FILE2 >/dev/null
76 $CSQL_INSTALL_ROOT/bin/csqlserver >/dev/null 2>&1 &
77 pid=$!
78 sleep 5
79 echo "server 1 started"
80 for a in 1 2
82 $CSQL_INSTALL_ROOT/bin/cachetable -t t$a -d $DSN
83 if [ $? -ne 0 ]
84 then
85 kill `ps -ef | grep csqlcacheserver | awk -F" " '{ print $2 }'`
86 kill -9 $pid
87 ipcrm -M 4000 -M 4500
88 isql $DS < ${REL_PATH}/mysqldeletelogtable.sql >/dev/null 2>&1
89 isql $DS < ${REL_PATH}/drop.sql >/dev/null 2>&1
90 exit 3;
92 sleep 2
93 done
94 echo "cache node 2"
95 $CSQL_INSTALL_ROOT/bin/csql -s $REL_PATH/select.sql
96 if [ $? -ne 0 ]
97 then
98 echo "unable to locate cache 1"
99 isql $DS < $REL_PATH/mysqldeletelogtable.sql >/dev/null 2>&1
100 kill `ps -ef | grep csqlcacheserver | awk -F" " '{ print $2 }'`
101 kill -9 $pid
102 ipcrm -M 4000 -M 4500
103 exit 4;
105 mkdir /tmp/csql1 >/dev/null 2>&1
106 rm -f /tmp/csql1/csqltable.conf
107 touch /tmp/csql1/csqltable.conf
109 rm -f /tmp/csql1.conf
110 cp $REL_PATH/conf/csql.conf /tmp/csql1.conf
111 export CSQL_CONFIG_FILE=/tmp/csql1.conf
112 echo DSN=$DSN >>$CSQL_CONFIG_FILE
113 $CSQL_INSTALL_ROOT/bin/csqlserver >/dev/null 2>&1 &
114 pid1=$!
115 sleep 5
116 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 6;
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
139 ipcrm -M 4000 -M 4500
140 echo "unable to locate cache 1"
141 isql $DS < $REL_PATH/mysqldeletelogtable.sql >/dev/null 2>&1
142 exit 4
144 echo "update some record in target database"
145 isql $DS < ${REL_PATH}/update.sql > /dev/null 2>&1
146 sleep 15
147 echo "cache node 1"
148 $CSQL_INSTALL_ROOT/bin/csql -s $REL_PATH/select.sql
149 export CSQL_CONFIG_FILE=/tmp/csql.conf
150 echo "cache node 2"
151 $CSQL_INSTALL_ROOT/bin/csql -s $REL_PATH/select.sql
153 $CSQL_INSTALL_ROOT/bin/csql -s $REL_PATH/drop.sql > /dev/null 2>&1
154 isql $DS < ${REL_PATH}/drop.sql >/dev/null 2>&1
155 rm -f /tmp/csql/csqltable.conf
156 touch /tmp/csql/csqltable.conf
157 rm -f /tmp/csql1/csqltable.conf
158 touch /tmp/csql1/csqltable.conf
159 isql $DS < $REL_PATH/mysqldeletelogtable.sql >/dev/null 2>&1
160 kill `ps -ef | grep csqlcacheserver | awk -F" " '{ print $2 }'`
161 kill -9 $pid $pid1
162 ipcrm -M 4000 -M 4500 -M 5000 -M 5500
163 exit 0;