adding test scripts
[csql.git] / test / durability / recovery / testMMAP006.ksh
blob5b2f934111173682de29aa50b8bacc2fb27285cf
1 #!/bin/ksh
2 # Testing Durability in MMAP architecture
3 # Autocommit Checking
4 # set DURABILITY=true and MMAP=true in csql.conf
5 # Start csqlserver. Then create a table in CSQL Client.Insert 5 Records.
6 # make Set autocommit off. insert another 5 records and Rollback.
7 # Kill the Server.
8 # Again Restart the Server by setting DURABILITY=true .
9 # select should Display 1st 5 records.
11 CSQL_CONF=${PWD}/durability/recovery/csql.conf
12 REL_PATH=.
13 if [ -s "$CSQL_CONF" ]
14 then
15 REL_PATH=${PWD}/durability/recovery
18 rm -f /tmp/csql.conf
19 rm -f /tmp/csql/db/*
20 mkdir -p /tmp/csql/db
21 cp -f $REL_PATH/csql.conf /tmp
22 echo SYS_DB_KEY=4444 >>/tmp/csql.conf
23 echo "DURABILITY=true" >>/tmp/csql.conf
24 echo "MMAP=true" >>/tmp/csql.conf
25 export CSQL_CONFIG_FILE=/tmp/csql.conf
28 echo "SELECT * FROM t2;" >${REL_PATH}/select_t2.sql
29 echo "drop table t2;" >${REL_PATH}/drop_t2.sql
31 echo "Durablity = TRUE"
32 echo "Server Started"
33 $CSQL_INSTALL_ROOT/bin/csqlserver >/dev/null 2>&1 &
34 pid=$!
35 sleep 2
36 echo "CREATING TABLE"
37 $CSQL_INSTALL_ROOT/bin/csql -u root -p manager -s ${REL_PATH}/create_t2.sql
38 if [ $? -ne 0 ]
39 then
40 rm -f ${REL_PATH}/select_t2.sql
41 rm -f ${REL_PATH}/drop_t2.sql
42 kill -9 $pid
43 ipcrm -M 4444
44 exit 1;
47 echo "INSERTING INTO TABLE"
48 echo "DEFAULT AUTOCOMMIT MODE ON"
49 $CSQL_INSTALL_ROOT/bin/csql -u root -p manager -s ${REL_PATH}/ins_rollback.sql
50 if [ $? -ne 0 ]
51 then
52 $CSQL_INSTALL_ROOT/bin/csql -u root -p manager -s ${REL_PATH}/drop_t2.sql
53 rm -f ${REL_PATH}/select_t2.sql
54 rm -f ${REL_PATH}/drop_t2.sql
55 kill -9 $pid
56 ipcrm -M 4444
57 exit 2;
60 $CSQL_INSTALL_ROOT/bin/csqldump >before.sql
61 kill -9 $pid
62 ipcrm -M 4444
63 echo "Server Killed"
65 echo ""
66 echo "Durablity = TRUE"
67 echo "Checking Durability"
68 $CSQL_INSTALL_ROOT/bin/csqlserver >/dev/null 2>&1 &
69 pid=$!
70 echo "Server Started"
71 sleep 2
72 $CSQL_INSTALL_ROOT/bin/csqldump >after.sql
73 diff before.sql after.sql >>/dev/null 2>&1
74 if [ $? -eq 0 ]
75 then
76 echo Durability Works Fine
79 $CSQL_INSTALL_ROOT/bin/csql -u root -p manager -s ${REL_PATH}/drop_t2.sql
80 rm -f ${REL_PATH}/select_t2.sql
81 rm -f ${REL_PATH}/drop_t2.sql
82 rm -f before.sql after.sql
83 kill -9 $pid
84 ipcrm -M 4444
85 exit 0;