windows client library changes
[csql.git] / test / cache / Bidirectional / test008.ksh
blobb90981cbe697f8055dbf8b70b72f1028458ed4a9
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 # insert 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
20 #echo $DSQL_CONFIG_FILE /tmp/csql.conf
21 export CSQL_CONFIG_FILE=/tmp/csql.conf
22 echo DSN=$DSN >>$CSQL_CONFIG_FILE
23 DS="$DSN $DBUSER $PASSWORD"
24 rm -f /tmp/csql/csqlds.conf
25 touch /tmp/csql/csqlds.conf
26 $CSQL_INSTALL_ROOT/bin/csqlds -U $DBUSER -P $PASSWORD -D $DSN -N $TDB -a
27 if [ $? -ne 0 ]
28 then
29 exit 1;
31 if [ "$DSN" = "myodbc3" ]
32 then
33 LOG_FILE=$REL_PATH/mysqlcreatelogtable.sql
34 TRI_FILE1=$REL_PATH/trigger.sql
35 TRI_FILE2=$REL_PATH/trigger1.sql
36 elif [ "$DSN" = "psql" ]
37 then
38 LOG_FILE=$REL_PATH/psqlcreatelogtable.sql
39 TRI_FILE1=$REL_PATH/trigger.psql
40 TRI_FILE2=$REL_PATH/trigger1.psql
41 elif [ "$DSN" = "oracle" ]
42 then
43 LOG_FILE=$REL_PATH/oraclecreatelogtable.sql
44 TRI_FILE1=$REL_PATH/triggermul.oracle
45 TRI_FILE2=$REL_PATH/trigger1mul.oracle
46 elif [ "$DSN" = "sybase" ]
47 then
48 LOG_FILE=$REL_PATH/sybasecreatelogtable.sql
49 TRI_FILE1=$REL_PATH/trigger.sybase
50 TRI_FILE2=$REL_PATH/trigger1.sybase
51 elif [ $DSN = "db2" ]
52 then
53 LOG_FILE=$REL_PATH/db2createlogtable.sql
54 TRI_FILE1=$REL_PATH/trigger.db2
55 TRI_FILE2=$REL_PATH/trigger1.db2
56 else
57 LOG_FILE=
58 TRI_FILE1=
59 TRI_FILE2=
63 isql $DS < $LOG_FILE >/dev/null 2>&1
64 if [ $? -ne 0 ]
65 then
66 echo "DSN is not set for target db"
67 exit 1
70 echo table csql_log_int is created with records in target db
72 isql $DS < $REL_PATH/create.sql >/dev/null 2>&1
73 rm -f /tmp/csql/csqltable.conf
74 touch /tmp/csql/csqltable.conf
75 isql $DS < $TRI_FILE1 >/dev/null 2>&1
76 isql $DS < $TRI_FILE2 >/dev/null 2>&1
78 $CSQL_INSTALL_ROOT/bin/csqlserver >/dev/null 2>&1 &
79 pid=$!
80 sleep 5
81 echo "server 1 started"
82 for a in 1 2
84 $CSQL_INSTALL_ROOT/bin/cachetable -t t$a -d $DSN
85 if [ $? -ne 0 ]
86 then
87 kill `ps -ef | grep csqlcacheserver | awk -F" " '{ print $2 }'`
88 kill -9 $pid
89 ipcrm -M 4000 -M 4500
90 isql $DS < ${REL_PATH}/mysqldeletelogtable.sql >/dev/null 2>&1
91 isql $DS < ${REL_PATH}/drop.sql >/dev/null 2>&1
92 exit 3;
94 sleep 2
95 done
97 echo "cache node 2"
98 $CSQL_INSTALL_ROOT/bin/csql -s $REL_PATH/select.sql
99 if [ $? -ne 0 ]
100 then
101 echo "unable to locate cache 1"
102 exit 2
104 mkdir /tmp/csql1 >/dev/null 2>&1
105 rm -f /tmp/csql1/csqltable.conf
106 touch /tmp/csql1/csqltable.conf
108 rm -f /tmp/csql1.conf
109 cp $REL_PATH/conf/csql.conf /tmp/csql1.conf
110 export CSQL_CONFIG_FILE=/tmp/csql1.conf
111 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 6;
129 sleep 2
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
138 ipcrm -M 4000 -M 4500
139 isql $DS < ${REL_PATH}/mysqldeletelogtable.sql >/dev/null 2>&1
140 isql $DS < ${REL_PATH}/drop.sql >/dev/null 2>&1
141 echo "unable to locate cache 1"
142 exit 4
145 $CSQL_INSTALL_ROOT/bin/csql -g < ${REL_PATH}/insert.sql >/dev/null 2>&1
146 sleep 20
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
162 kill `ps -ef | grep csqlcacheserver | awk -F" " '{ print $2 }'`
163 kill -9 $pid $pid1
164 ipcrm -M 4000 -M 4500 -M 5000 -M 5500
165 exit 0;