adding test scripts
[csql.git] / test / cache / Durability / test004.ksh
blob0d24d1c28bac32faf7974f0436e429cb00f62eef
1 #!/bin/ksh
2 # Test Case
3 # Create table t1 in Target DB and insert 1 records in TDB.
4 # Set DURABILITY=true and CACHE_TABLE=true in csql.conf. Start csqlserver
5 # Cache t1 table in SYNC mode at CSQL
6 # Insert 1 record at CSQL.
7 # It Should be Propagated to TDB.
8 # Kill The Server
9 # Set CACHE_TABLE=false in csql.conf. Start csqlserver with same configuration
10 # The Previous Table Should be Durable here.
11 # Insert 1 record at CSQL.
12 # The Insertion Happens at CSQL should not be propagated to TDB
14 CSQL_CONF=${PWD}/cache/Durability/csql.conf
15 REL_PATH=.
16 if [ -s "$CSQL_CONF" ]
17 then
18 REL_PATH=${PWD}/cache/Durability
21 rm -f /tmp/csql.conf
22 cp $CSQL_CONFIG_FILE /tmp/csql.conf
23 export CSQL_CONFIG_FILE=/tmp/csql.conf
24 echo SYS_DB_KEY=3399 >> $CSQL_CONFIG_FILE
25 echo USER_DB_KEY=4499 >> $CSQL_CONFIG_FILE
26 echo CACHE_TABLE=true >>$CSQL_CONFIG_FILE
27 echo DURABILITY=true >>$CSQL_CONFIG_FILE
30 # CSQL Configuration
31 rm -rf /tmp/csql
32 mkdir -p /tmp/csql
33 mkdir -p /tmp/csql/log
34 mkdir -p /tmp/csql/db
35 rm -f /tmp/csql/csqlds.conf /tmp/csql/csqltable.conf
36 touch /tmp/csql/csqlds.conf /tmp/csql/csqltable.conf
37 touch /tmp/csql/csqlnw.conf
39 echo DSN=$DSN >>$CSQL_CONFIG_FILE
40 DS="$DSN $DBUSER $PASSWORD"
41 $CSQL_INSTALL_ROOT/bin/csqlds -U $DBUSER -P $PASSWORD -D $DSN -N $TDB -a
42 if [ $? -ne 0 ]
43 then
44 exit 1;
47 echo INSERTING 1 RECORDS IN TARGET DB
48 echo "CREATE TABLE t1(f1 int);" >${REL_PATH}/creat_ins_attdb.sql
49 echo "INSERT INTO t1 values(1);" >>${REL_PATH}/creat_ins_attdb.sql
50 isql $DS < ${REL_PATH}/creat_ins_attdb.sql
51 if [ $? -ne 0 ]
52 then
53 isql $DS < ${REL_PATH}/drop_t1.sql
54 exit 1;
57 isql $DS < ${REL_PATH}/select_t1.sql
58 if [ $? -ne 0 ]
59 then
60 isql $DS < ${REL_PATH}/drop_t1.sql
61 rm -rf ${REL_PATH}/creat_ins_attdb.sql
62 exit 2;
65 # RUN CSQL SERVER at CSQL
66 $CSQL_INSTALL_ROOT/bin/csqlserver >/dev/null 2>&1 &
67 pid=$!
68 sleep 10
70 echo "CACHING THROUGH SITE1"
71 echo "cachetable -U root -P manager -t t1"
72 $CSQL_INSTALL_ROOT/bin/cachetable -U root -P manager -t t1
73 if [ $? -ne 0 ]
74 then
75 kill -9 $pid
76 ipcrm -M 3399 -M 4499 -M 1947 -Q 2525
77 isql $DS < ${REL_PATH}/drop_t1.sql
78 rm -rf ${REL_PATH}/creat_ins_attdb.sql
79 exit 3;
82 $CSQL_INSTALL_ROOT/bin/csql -u root -p manager -s ${REL_PATH}/select_t1.sql
83 if [ $? -ne 0 ]
84 then
85 kill -9 $pid
86 ipcrm -M 3399 -M 4499 -M 1947 -Q 2525
87 isql $DS < ${REL_PATH}/drop_t1.sql
88 $CSQL_INSTALL_ROOT/bin/cachetable -U root -P manager -t t1 -u
89 rm -rf ${REL_PATH}/creat_ins_attdb.sql
90 rm -rf ${REL_PATH}/ins1_atCSQL.sql
91 exit 4;
94 #Insertion in cached table at csql
95 echo INSERTING 1 RECORD IN CACHED TABLE t1 AT CSQL
96 echo "INSERT INTO t1 VALUES(2);" >${REL_PATH}/ins1_atCSQL.sql
97 $CSQL_INSTALL_ROOT/bin/csql -g -u root -p manager -s ${REL_PATH}/ins1_atCSQL.sql
98 if [ $? -ne 0 ]
99 then
100 kill -9 $pid
101 ipcrm -M 3399 -M 4499 -M 1947 -Q 2525
102 isql $DS < ${REL_PATH}/drop_t1.sql
103 $CSQL_INSTALL_ROOT/bin/cachetable -U root -P manager -t t1 -u
104 rm -rf ${REL_PATH}/creat_ins_attdb.sql
105 rm -rf ${REL_PATH}/ins1_atCSQL.sql
106 exit 5;
109 echo AFTER INSERT AT CSQL DATA IN CSQL
110 $CSQL_INSTALL_ROOT/bin/csql -u root -p manager -s ${REL_PATH}/select_t1.sql
111 if [ $? -ne 0 ]
112 then
113 kill -9 $pid
114 ipcrm -M 3399 -M 4499 -M 1947 -Q 2525
115 isql $DS < ${REL_PATH}/drop_t1.sql
116 $CSQL_INSTALL_ROOT/bin/cachetable -U root -P manager -t t1 -u
117 rm -rf ${REL_PATH}/creat_ins_attdb.sql
118 rm -rf ${REL_PATH}/ins1_atCSQL.sql
119 exit 12;
122 echo AFTER INSERT AT CSQL DATA IN TDB
123 isql $DS < ${REL_PATH}/select_t1.sql
124 if [ $? -ne 0 ]
125 then
126 kill -9 $pid
127 ipcrm -M 3399 -M 4499 -M 1947 -Q 2525
128 isql $DS < ${REL_PATH}/drop_t1.sql
129 $CSQL_INSTALL_ROOT/bin/cachetable -U root -P manager -t t1 -u
130 rm -rf ${REL_PATH}/creat_ins_attdb.sql
131 rm -rf ${REL_PATH}/ins1_atCSQL.sql
132 exit 6;
135 $CSQL_INSTALL_ROOT/bin/csqldump -X >before.sql
136 kill -9 $pid
137 ipcrm -M 3399 -M 4499 -M 1947 -Q 2525
138 echo "Server Killed"
140 echo ""
141 echo "Durablity = TRUE"
142 echo "Cache_table = FALSE"
143 echo CACHE_TABLE=false >>$CSQL_CONFIG_FILE
144 $CSQL_INSTALL_ROOT/bin/csqlserver >/dev/null 2>&1 &
145 echo "Server Started"
146 pid=$!
147 sleep 2
148 echo "Checking Durability"
149 $CSQL_INSTALL_ROOT/bin/csqldump -X >after.sql
150 diff before.sql after.sql
151 if [ $? -eq 0 ]
152 then
153 echo Durability Works Fine
154 else
155 echo Durability Does Not work fine
158 #Insertion in cached table at csql
159 echo INSERTING ANOTHER RECORD IN CACHED TABLE t1 AT CSQL
160 echo "INSERT INTO t1 VALUES(3);" >${REL_PATH}/ins_another_atCSQL.sql
161 $CSQL_INSTALL_ROOT/bin/csql -g -u root -p manager -s ${REL_PATH}/ins_another_atCSQL.sql
162 if [ $? -ne 0 ]
163 then
164 kill -9 $pid
165 ipcrm -M 3399 -M 4499 -M 1947 -Q 2525
166 isql $DS < ${REL_PATH}/drop_t1.sql
167 $CSQL_INSTALL_ROOT/bin/csql -s ${REL_PATH}/drop_t1.sql
168 rm -f ${REL_PATH}/creat_ins_attdb.sql
169 rm -f ${REL_PATH}/ins1_atCSQL.sql
170 rm -f ${REL_PATH}/ins_another_atCSQL.sql
171 exit 7;
174 echo AFTER INSERT AT CSQL DATA IN CSQL
175 $CSQL_INSTALL_ROOT/bin/csql -u root -p manager -s ${REL_PATH}/select_t1.sql
176 if [ $? -ne 0 ]
177 then
178 kill -9 $pid
179 ipcrm -M 3399 -M 4499 -M 1947 -Q 2525
180 isql $DS < ${REL_PATH}/drop_t1.sql
181 $CSQL_INSTALL_ROOT/bin/cachetable -U root -P manager -t t1 -u
182 rm -rf ${REL_PATH}/creat_ins_attdb.sql
183 rm -rf ${REL_PATH}/ins1_atCSQL.sql
184 rm -f ${REL_PATH}/ins_another_atCSQL.sql
185 exit 8;
188 echo AFTER INSERT AT CSQL DATA IN TDB
189 isql $DS < ${REL_PATH}/select_t1.sql
190 if [ $? -ne 0 ]
191 then
192 kill -9 $pid
193 ipcrm -M 3399 -M 4499 -M 1947 -Q 2525
194 isql $DS < ${REL_PATH}/drop_t1.sql
195 $CSQL_INSTALL_ROOT/bin/csql -s ${REL_PATH}/drop_t1.sql
196 rm -f ${REL_PATH}/creat_ins_attdb.sql
197 rm -f ${REL_PATH}/ins1_atCSQL.sql
198 rm -f ${REL_PATH}/ins_another_atCSQL.sql
199 exit 9;
202 echo CACHE_TABLE=true >>$CSQL_CONFIG_FILE
204 $CSQL_INSTALL_ROOT/bin/cachetable -t t1 -u
205 if [ $? -ne 0 ]
206 then
207 kill -9 $pid1
208 rm -f before.sql after.sql
209 rm -f ${REL_PATH}/creat_ins_attdb.sql
210 rm -f ${REL_PATH}/ins1_atCSQL.sql
211 rm -f ${REL_PATH}/ins_another_atCSQL.sql
212 rm -M 3399 -M 4499 -M 1947 -Q 2525
213 exit 10;
216 $CSQL_INSTALL_ROOT/bin/csql -s ${REL_PATH}/drop_t1.sql
217 if [ $? -ne 0 ]
218 then
219 kill -9 $pid1
220 rm -f before.sql after.sql
221 rm -f ${REL_PATH}/creat_ins_attdb.sql
222 rm -f ${REL_PATH}/ins1_atCSQL.sql
223 rm -f ${REL_PATH}/ins_another_atCSQL.sql
224 rm -M 3399 -M 4499 -M 1947 -Q 2525
225 exit 10;
228 isql $DS < ${REL_PATH}/drop_t1.sql
229 if [ $? -ne 0 ]
230 then
231 kill -9 $pid1
232 rm -f before.sql after.sql
233 rm -f ${REL_PATH}/creat_ins_attdb.sql
234 rm -f ${REL_PATH}/ins1_atCSQL.sql
235 rm -f ${REL_PATH}/ins_another_atCSQL.sql
236 ipcrm -M 3399 -M 4499 -M 1947 -Q 2525
237 exit 11;
240 rm -f before.sql after.sql
241 rm -f ${REL_PATH}/creat_ins_attdb.sql
242 rm -f ${REL_PATH}/ins1_atCSQL.sql
243 rm -f ${REL_PATH}/ins_another_atCSQL.sql
244 kill -9 $pid
245 ipcrm -M 3399 -M 4499 -M 1947 -Q 2525
246 exit 0;