adding test scripts
[csql.git] / test / cache / Bidirectional / test010.ksh
blobd6528765586b138b267e42815413750f358311ea
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 operation in one cache node 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 isql $DS < ${REL_PATH}/mysqldeletelogtable.sql >/dev/null 2>&1
90 isql $DS < ${REL_PATH}/drop.sql >/dev/null 2>&1
91 exit 3;
93 sleep 3
94 done
96 echo "cache node 2"
97 $CSQL_INSTALL_ROOT/bin/csql -s $REL_PATH/select.sql
98 if [ $? -ne 0 ]
99 then
100 echo "unable to locate cache 1"
101 isql $DS < $REL_PATH/mysqldeletelogtable.sql >/dev/null 2>&1
102 isql $DS < ${REL_PATH}/drop.sql >/dev/null 2>&1
103 exit 3
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"
117 for a in 1 2
119 $CSQL_INSTALL_ROOT/bin/cachetable -t t$a -d $DSN
120 if [ $? -ne 0 ]
121 then
122 kill `ps -ef | grep csqlcacheserver | awk -F" " '{ print $2 }'`
123 kill -9 $pid $pid1
124 ipcrm -M 4000 -M 4500 -M 5000 -M 5500
125 isql $DS < ${REL_PATH}/mysqldeletelogtable.sql >/dev/null 2>&1
126 isql $DS < ${REL_PATH}/drop.sql >/dev/null 2>&1
127 exit 3;
129 sleep 3
130 done
132 echo "cache node 1"
133 $CSQL_INSTALL_ROOT/bin/csql -s $REL_PATH/select.sql
134 if [ $? -ne 0 ]
135 then
136 kill `ps -ef | grep csqlcacheserver | awk -F" " '{ print $2 }'`
137 kill -9 $pid $pid1
138 ipcrm -M 4000 -M 4500 -M 5000 -M 5500
139 echo "unable to locate cache 1"
140 isql $DS < ${REL_PATH}/drop.sql >/dev/null 2>&1
141 isql $DS < $REL_PATH/mysqldeletelogtable.sql >/dev/null 2>&1
142 exit 4
144 echo "Update operation in cache node 1"
145 $CSQL_INSTALL_ROOT/bin/csql -g < ${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
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;