adding test scripts
[csql.git] / test / durability / recovery / test017.ksh
blob9040e29275a74c3ab513bcc6dda96c782ce25d5e
1 #!/bin/ksh
2 # set DURABILITY to true in csql.conf
3 # Start csqlserver. Then create a table t1 in CSQL Client.
4 # kill the currently running Server.
5 # Again Restart the Server by setting DURABILITY=true and Open CSQL Client.
6 # Create another table t2 .
7 # Kill the server.
8 # Continue The same for 20 times. Each time tables should be durable
9 # All should work Fine
12 CSQL_CONF=${PWD}/durability/recovery/csql.conf
13 REL_PATH=.
14 if [ -s "$CSQL_CONF" ]
15 then
16 REL_PATH=${PWD}/durability/recovery
19 rm -f /tmp/csql.conf
20 rm -f /tmp/csql/db/*
21 mkdir -p /tmp/csql/db
22 cp -f $REL_PATH/csql.conf /tmp
23 echo SYS_DB_KEY=4444 >>/tmp/csql.conf
24 echo USER_DB_KEY=6666 >>/tmp/csql.conf
25 echo "DURABILITY=true" >>/tmp/csql.conf
26 export CSQL_CONFIG_FILE=/tmp/csql.conf
28 echo "Durablity = TRUE"
29 $CSQL_INSTALL_ROOT/bin/csqlserver >/dev/null 2>&1 &
30 pid=$!
31 echo "Server Started"
32 sleep 2
33 i=1
34 while [[ $i -lt 21 ]];do
35 echo "CREATING TABLE t$i"
36 echo "CREATE TABLE t$i(f1 int,f2 char(100));" >${REL_PATH}/cre_t$i.sql
37 if [ "$VALGRIND" = "true" ]
38 then
39 valgrind --tool=memcheck --leak-check=full $CSQL_INSTALL_ROOT/bin/csql -u root -p manager -s ${REL_PATH}/cre_t$i.sql 2> $0.valgr
40 else
41 $CSQL_INSTALL_ROOT/bin/csql -u root -p manager -s ${REL_PATH}/cre_t$i.sql >/dev/null 2>&1
42 if [ $? -ne 0 ]
43 then
44 rm -f ${REL_PATH}/cre_t$i.sql
45 kill -9 $pid
46 ipcrm -M 4444 -M 6666
47 exit 1;
51 if [ "$VALGRIND" = "true" ]
52 then
53 valgrind --tool=memcheck --leak-check=full $CSQL_INSTALL_ROOT/bin/csqldump 2>> $0.valgr
54 else
55 $CSQL_INSTALL_ROOT/bin/csqldump >before.sql
58 kill -9 $pid
59 ipcrm -M 4444 -M 6666
60 echo "Server Killed"
62 $CSQL_INSTALL_ROOT/bin/csqlserver >/dev/null 2>&1 &
63 pid=$!
64 echo "Server Started"
65 sleep 2
67 if [ "$VALGRIND" = "true" ]
68 then
69 valgrind --tool=memcheck --leak-check=full $CSQL_INSTALL_ROOT/bin/csqldump 2>> $0.valgr
70 else
71 $CSQL_INSTALL_ROOT/bin/csqldump >after.sql
74 diff before.sql after.sql
75 if [ $? -eq 0 ]
76 then
77 echo Durability Works Fine
79 (( i +=1 ))
80 done
82 rm -f before.sql after.sql
83 i=1
84 while [[ $i -lt 21 ]];do
85 echo "DROP TABLE t$i;" >>${REL_PATH}/dropall.sql
86 rm -f cre_t$i.sql
87 (( i +=1 ))
88 done
89 $CSQL_INSTALL_ROOT/bin/csql -s ${REL_PATH}/dropall.sql >/dev/null 2>&1
90 rm -f ${REL_PATH}/dropall.sql
91 kill -9 $pid
92 ipcrm -M 4444 -M 6666
93 exit 0;