adding test scripts
[csql.git] / test / durability / recovery / testMMAP007.ksh
blob78df8847bc676a7e46dbb39b276c7d2ed00f3170
1 #!/bin/ksh
2 # Testing Durability in MMAP architecture
3 # Run this test only under csql/test or on this directory.
4 # Otherwise, it may fail
5 # set DURABILITY=true and MMAP=true in csql.conf
6 # Start csqlserver. Then create a table in CSQL Client.Insert 5 Records.
7 # make Set autocommit off. insert another 5 records and Commit.
8 # Kill the Server.
9 # Again Restart the Server by setting DURABILITY=true .
10 # select should Display all 10 records.
13 CSQL_CONF=${PWD}/durability/recovery/csql.conf
14 REL_PATH=.
15 if [ -s "$CSQL_CONF" ]
16 then
17 REL_PATH=${PWD}/durability/recovery
20 rm -f /tmp/csql.conf
21 rm -rf /tmp/csql/db
22 mkdir -p /tmp/csql/db
23 cp -f $REL_PATH/csql.conf /tmp
24 echo SYS_DB_KEY=4444 >>/tmp/csql.conf
25 echo "DURABILITY=true" >>/tmp/csql.conf
26 echo "MMAP=true" >>/tmp/csql.conf
27 export CSQL_CONFIG_FILE=/tmp/csql.conf
29 echo "SELECT * FROM t2;" >${REL_PATH}/select_t2.sql
30 echo "drop table t2;" >${REL_PATH}/drop_t2.sql
32 echo "Durablity = TRUE"
33 echo "Server Started"
34 $CSQL_INSTALL_ROOT/bin/csqlserver >/dev/null 2>&1 &
35 pid=$!
36 sleep 2
37 echo "CREATING TABLE"
38 $CSQL_INSTALL_ROOT/bin/csql -u root -p manager -s ${REL_PATH}/create_t2.sql >/dev/null 2>&1
39 if [ $? -ne 0 ]
40 then
41 rm -f ${REL_PATH}/select_t2.sql
42 rm -f ${REL_PATH}/drop_t2.sql
43 kill -9 $pid
44 ipcrm -M 4444
45 exit 1;
48 echo "INSERTING INTO TABLE"
49 echo "DEFAULT AUTOCOMMIT MODE ON"
50 $CSQL_INSTALL_ROOT/bin/csql -u root -p manager -s ${REL_PATH}/ins_commit.sql >/dev/null 2>&1
51 if [ $? -ne 0 ]
52 then
53 $CSQL_INSTALL_ROOT/bin/csql -u root -p manager -s ${REL_PATH}/drop_t2.sql
54 rm -f ${REL_PATH}/select_t2.sql
55 rm -f ${REL_PATH}/drop_t2.sql
56 kill -9 $pid
57 ipcrm -M 4444
58 exit 2;
60 $CSQL_INSTALL_ROOT/bin/csqldump >before.sql
62 kill -9 $pid
63 ipcrm -M 4444
64 echo "Server Killed"
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 echo ""
74 diff before.sql after.sql >>/dev/null 2>&1
75 if [ $? -eq 0 ]
76 then
77 echo Durability Works Fine
80 $CSQL_INSTALL_ROOT/bin/csql -u root -p manager -s ${REL_PATH}/drop_t2.sql
81 rm -f ${REL_PATH}/select_t2.sql
82 rm -f ${REL_PATH}/drop_t2.sql
83 rm -f before.sql after.sql
84 kill -9 $pid
85 ipcrm -M 4444
86 exit 0;