First version for durability tests
[csql.git] / test / tools / Durability / test009.ksh
blobbf72de3aba3182aa862e5ba1e7bd048db7b0193d
1 #!/bin/sh
2 # Set DURABILITY to true in csql.conf
3 # Start csqlserver. in CSQl client create a table and insert 5 recored
4 # 50 times kill and start the server
5 # Restart csqlserver again.
6 # Select Should fetch those inserted 5 records
7 #
9 CSQL_CONF=${PWD}/tools/Durability/csql.conf
10 REL_PATH=.
11 if [ -s "$CSQL_CONF" ]
12 then
13 REL_PATH=${PWD}/tools/Durability
16 rm -f /tmp/csql.conf
17 rm -rf /tmp/csql/db
18 mkdir -p /tmp/csql/db
19 cp -f $REL_PATH/csql.conf /tmp
20 echo SYS_DB_KEY=4444 >>/tmp/csql.conf
21 echo USER_DB_KEY=6666 >>/tmp/csql.conf
22 echo "DURABILITY=true" >>/tmp/csql.conf
23 export CSQL_CONFIG_FILE=/tmp/csql.conf
26 echo "drop table t2;" >${REL_PATH}/drop_t2.sql
28 echo "Durablity = TRUE"
29 echo "Server Started"
30 $CSQL_INSTALL_ROOT/bin/csqlserver >/dev/null 2>&1 &
31 pid=$!
32 sleep 1
33 echo "CREATING TABLE"
34 $CSQL_INSTALL_ROOT/bin/csql -u root -p manager -s ${REL_PATH}/create_t2.sql
35 if [ $? -ne 0 ]
36 then
37 rm -f ${REL_PATH}/drop_t2.sql
38 kill -9 $pid
39 ipcrm -M 4444 -M 6666
40 exit 1;
43 echo "INSERTING INTO TABLE"
44 echo "DEFAULT AUTOCOMMIT MODE ON"
45 $CSQL_INSTALL_ROOT/bin/csql -u root -p manager -s ${REL_PATH}/insert_a.sql
46 if [ $? -ne 0 ]
47 then
48 $CSQL_INSTALL_ROOT/bin/csql -u root -p manager -s ${REL_PATH}/drop_t2.sql
49 rm -f ${REL_PATH}/drop_t2.sql
50 kill -9 $pid
51 ipcrm -M 4444 -M 6666
52 exit 2;
55 $CSQL_INSTALL_ROOT/bin/csqldump >before.sql
56 kill -9 $pid
57 ipcrm -M 4444 -M 6666
58 echo "Server Killed"
60 for((i=1;i<=50;i++))
62 echo count=$i
63 $CSQL_INSTALL_ROOT/bin/csqlserver >/dev/null 2>&1 &
64 pid=$!
65 echo "Server Started"
66 sleep 2
67 echo "Checking Durability"
68 $CSQL_INSTALL_ROOT/bin/csqldump >after.sql
69 diff before.sql after.sql
70 if [ $? -eq 0 ]
71 then
72 echo Durability Works Fine
75 echo "INSERTING INTO TABLE"
76 echo "DEFAULT AUTOCOMMIT MODE ON"
77 $CSQL_INSTALL_ROOT/bin/csql -u root -p manager -s ${REL_PATH}/insert_a.sql
78 if [ $? -ne 0 ]
79 then
80 $CSQL_INSTALL_ROOT/bin/csql -u root -p manager -s ${REL_PATH}/drop_t2.sql
81 rm -f ${REL_PATH}/drop_t2.sql
82 kill -9 $pid
83 ipcrm -M 4444 -M 6666
84 exit 2;
87 $CSQL_INSTALL_ROOT/bin/csqldump >before.sql
88 kill -9 $pid
89 ipcrm -M 4444 -M 6666
90 echo "Server Killed"
91 done
93 echo "Durablity = TRUE"
94 echo "Checking Durability"
95 $CSQL_INSTALL_ROOT/bin/csqlserver >/dev/null 2>&1 &
96 pid=$!
97 echo "Server Started"
98 sleep 1
99 echo "Checking Durability"
100 $CSQL_INSTALL_ROOT/bin/csqldump >after.sql
101 diff before.sql after.sql
102 if [ $? -eq 0 ]
103 then
104 echo Durability Works Fine
106 echo "SELECT * FROM t2;" >${REL_PATH}/select_t2.sql
107 $CSQL_INSTALL_ROOT/bin/csql -u root -p manager -s ${REL_PATH}/select_t2.sql
108 if [ $? -ne 0 ]
109 then
110 $CSQL_INSTALL_ROOT/bin/csql -u root -p manager -s ${REL_PATH}/drop_t2.sql
111 rm -f ${REL_PATH}/drop_t2.sql
112 rm -f ${REL_PATH}/select_t2.sql
113 kill -9 $pid
114 ipcrm -M 4444 -M 6666
115 exit 2;
117 $CSQL_INSTALL_ROOT/bin/csql -u root -p manager -s ${REL_PATH}/drop_t2.sql
118 rm -f ${REL_PATH}/drop_t2.sql
119 rm -f ${REL_PATH}/select_t2.sql
120 kill -9 $pid
121 ipcrm -M 4444 -M 6666
122 echo "Server Killed"
123 exit 0;