*** empty log message ***
[csql.git] / test / durability / recovery / testMMAP009.ksh
blob940c246a90172c3f9f20c156ffa08f947e18d3e2
1 #!/bin/ksh
2 # Testing Durability in MMAP architecture
3 # Set DURABILITY=true MMAP=true in csql.conf
4 # Start csqlserver. in CSQl client create a table and insert 5 recored
5 # 50 times kill and start the server
6 # Restart csqlserver again.
7 # Select Should fetch those inserted 5 records
10 CSQL_CONF=${PWD}/durability/recovery/csql.conf
11 REL_PATH=.
12 if [ -s "$CSQL_CONF" ]
13 then
14 REL_PATH=${PWD}/durability/recovery
17 rm -f /tmp/csql.conf
18 rm -rf /tmp/csql/db
19 mkdir -p /tmp/csql/db
20 cp -f $REL_PATH/csql.conf /tmp
21 echo SYS_DB_KEY=4444 >>/tmp/csql.conf
22 echo "DURABILITY=true" >>/tmp/csql.conf
23 echo "MMAP=true" >>/tmp/csql.conf
24 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 >/dev/null 2>&1
35 if [ $? -ne 0 ]
36 then
37 rm -f ${REL_PATH}/drop_t2.sql
38 kill -9 $pid
39 ipcrm -M 4444
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 >/dev/null 2>&1
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
52 exit 2;
55 $CSQL_INSTALL_ROOT/bin/csqldump >before.sql
56 kill -9 $pid
57 ipcrm -M 4444
58 echo "Server Killed"
59 i=1
60 while [[ $i -lt 51 ]];do
61 echo count=$i
62 $CSQL_INSTALL_ROOT/bin/csqlserver >/dev/null 2>&1 &
63 pid=$!
64 echo "Server Started"
65 sleep 2
66 echo "Checking Durability"
67 $CSQL_INSTALL_ROOT/bin/csqldump >after.sql
68 diff before.sql after.sql >/dev/null 2>&1
69 if [ $? -eq 0 ]
70 then
71 echo Durability Works Fine
74 echo "INSERTING INTO TABLE"
75 echo "DEFAULT AUTOCOMMIT MODE ON"
76 $CSQL_INSTALL_ROOT/bin/csql -u root -p manager -s ${REL_PATH}/insert_a.sql >/dev/null 2>&1
77 if [ $? -ne 0 ]
78 then
79 $CSQL_INSTALL_ROOT/bin/csql -u root -p manager -s ${REL_PATH}/drop_t2.sql
80 rm -f ${REL_PATH}/drop_t2.sql
81 kill -9 $pid
82 ipcrm -M 4444
83 exit 2;
86 $CSQL_INSTALL_ROOT/bin/csqldump >before.sql
87 kill -9 $pid
88 ipcrm -M 4444
89 echo "Server Killed"
90 (( i +=1 ))
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 >/dev/null 2>&1
102 if [ $? -eq 0 ]
103 then
104 echo Durability Works Fine
107 $CSQL_INSTALL_ROOT/bin/csql -u root -p manager -s ${REL_PATH}/drop_t2.sql
108 rm -f ${REL_PATH}/drop_t2.sql
109 rm -f ${REL_PATH}/select_t2.sql
110 kill -9 $pid
111 ipcrm -M 4444
112 echo "Server Killed"
113 exit 0;