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.
9 # Again Restart the Server by setting DURABILITY=true .
10 # select should Display all 10 records.
13 CSQL_CONF
=${PWD}/durability
/recovery
/csql.conf
15 if [ -s "$CSQL_CONF" ]
17 REL_PATH
=${PWD}/durability
/recovery
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"
34 $CSQL_INSTALL_ROOT/bin
/csqlserver
>/dev
/null
2>&1 &
38 $CSQL_INSTALL_ROOT/bin
/csql
-u root
-p manager
-s ${REL_PATH}/create_t2.sql
>/dev
/null
2>&1
41 rm -f ${REL_PATH}/select_t2.sql
42 rm -f ${REL_PATH}/drop_t2.sql
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
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
60 $CSQL_INSTALL_ROOT/bin
/csqldump
>before.sql
66 echo "Durablity = TRUE"
67 echo "Checking Durability"
68 $CSQL_INSTALL_ROOT/bin
/csqlserver
>/dev
/null
2>&1 &
72 $CSQL_INSTALL_ROOT/bin
/csqldump
>after.sql
74 diff before.sql after.sql
>>/dev
/null
2>&1
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