fixing timing issue in test script
[csql.git] / test / durability / recovery / testMMAP019.ksh
blob647a2aee97cef00f9a3ea67e57bfb4e4a0f45b2e
1 #!/bin/ksh
2 # Testing Durability in MMAP Architecture
3 # set DURABILITY to true and MMAP=true in csql.conf
4 # Start csqlserver.
5 # Then create a table t1 with record size 20.
6 # Insert 1k Records
7 # kill the currently running Server.
8 # set DURABILITY to true and MMAP=true in csql.conf
9 # Start csqlserver.
10 # Insert another 1k Records.
11 # All inserted records should be durable
14 CSQL_CONF=${PWD}/durability/recovery/csql.conf
15 REL_PATH=.
16 if [ -s "$CSQL_CONF" ]
17 then
18 REL_PATH=${PWD}/durability/recovery
21 rm -f /tmp/csql.conf
22 rm -f /tmp/csql/db/*
23 mkdir -p /tmp/csql/db
24 cp -f $REL_PATH/csql.conf /tmp
25 echo SYS_DB_KEY=4444 >>/tmp/csql.conf
26 echo "DURABILITY=true" >>/tmp/csql.conf
27 echo "MMAP=true" >>/tmp/csql.conf
28 export CSQL_CONFIG_FILE=/tmp/csql.conf
30 echo "DURABILITY=true and MMAP=true"
31 $CSQL_INSTALL_ROOT/bin/csqlserver >/dev/null 2>&1 &
32 pid=$!
33 echo "Server Started"
34 sleep 2
36 echo "SELECT COUNT(*) from t1;" >${REL_PATH}/sel.sql
37 echo "CREATE TABLE t1(f1 int,f2 char(15));"
38 echo "CREATE TABLE t1(f1 int,f2 char(15));" >${REL_PATH}/cre_t1.sql
39 $CSQL_INSTALL_ROOT/bin/csql -u root -p manager -s ${REL_PATH}/cre_t1.sql >/dev/null 2>&1
40 if [ $? -ne 0 ]
41 then
42 rm -f ${REL_PATH}/cre_t1.sql
43 kill -9 $pid
44 ipcrm -M 4444
45 exit 1;
46 fi
47 j=1
48 while [[ $j -lt 1001 ]];do
49 echo "INSERT INTO t1 VALUES($j,'CSQL$j');" >>${REL_PATH}/ins_1000.sql
50 (( j +=1 ))
51 done
52 $CSQL_INSTALL_ROOT/bin/csql -s ${REL_PATH}/ins_1000.sql >/dev/null 2>&1
53 if [ $? -ne 0 ]
54 then
55 rm -f ${REL_PATH}/cre_t1.sql
56 rm -f ${REL_PATH}/ins_1000.sql
57 kill -9 $pid
58 ipcrm -M 4444
59 exit 1;
60 fi
61 $CSQL_INSTALL_ROOT/bin/csqldump >before.sql
62 kill -9 $pid
63 ipcrm -M 4444
64 echo "Server Killed"
65 $CSQL_INSTALL_ROOT/bin/csqlserver >/dev/null 2>&1 &
66 pid=$!
67 echo "Server Started"
68 sleep 2
69 $CSQL_INSTALL_ROOT/bin/csqldump >after.sql
70 diff before.sql after.sql
71 if [ $? -eq 0 ]
72 then
73 $CSQL_INSTALL_ROOT/bin/csql -s ${REL_PATH}/sel.sql
74 echo Durability Works Fine
76 rm -f before.sql after.sql
77 echo "I-Pass Test over"
79 $CSQL_INSTALL_ROOT/bin/csqldump >before.sql
80 kill -9 $pid
81 ipcrm -M 4444
82 echo "Server Killed"
84 echo "DURABILITY=true and MMAP=true"
86 echo SYS_DB_KEY=4444 >>/tmp/csql.conf
87 echo USER_DB_KEY=6666 >>/tmp/csql.conf
88 echo "DURABILITY=true" >>/tmp/csql.conf
89 echo "MMAP=true" >>/tmp/csql.conf
90 export CSQL_CONFIG_FILE=/tmp/csql.conf
92 $CSQL_INSTALL_ROOT/bin/csqlserver >/dev/null 2>&1 &
93 pid=$!
94 echo "Server Started"
95 sleep 2
96 $CSQL_INSTALL_ROOT/bin/csqldump >after.sql
97 diff before.sql after.sql
98 if [ $? -eq 0 ]
99 then
100 $CSQL_INSTALL_ROOT/bin/csql -s ${REL_PATH}/sel.sql
101 echo Durability Works Fine
103 rm -f before.sql after.sql
104 echo "II-Pass Test over"
107 $CSQL_INSTALL_ROOT/bin/csql -s ${REL_PATH}/ins_1000.sql >/dev/null 2>&1
108 if [ $? -ne 0 ]
109 then
110 rm -f ${REL_PATH}/cre_t1.sql
111 rm -f ${REL_PATH}/ins_1000.sql
112 kill -9 $pid
113 ipcrm -M 4444
114 exit 1;
116 $CSQL_INSTALL_ROOT/bin/csqldump >before.sql
117 kill -9 $pid
118 ipcrm -M 4444
119 echo "Server Killed"
120 $CSQL_INSTALL_ROOT/bin/csqlserver >/dev/null 2>&1 &
121 pid=$!
122 echo "Server Started"
123 sleep 2
124 $CSQL_INSTALL_ROOT/bin/csqldump >after.sql
125 diff before.sql after.sql
126 if [ $? -eq 0 ]
127 then
128 $CSQL_INSTALL_ROOT/bin/csql -s ${REL_PATH}/sel.sql
129 echo Durability Works Fine
131 rm -f before.sql after.sql
132 echo "III-Pass Test over"
134 echo "DROP TABLE t1;" >drp.sql
135 $CSQL_INSTALL_ROOT/bin/csql -s ${REL_PATH}/drp.sql >/dev/null 2>&1
136 rm -f ${REL_PATH}/drp.sql
137 rm -f ${REL_PATH}/sel.sql
138 rm -f ${REL_PATH}/cre_t1.sql
139 rm -f ${REL_PATH}/ins_1000.sql
140 kill -9 $pid
141 ipcrm -M 4444
142 exit 0;