4 # Bi-directional cache test
5 # Create table t1 with field f1 int ,f2 char,f3 smallint , f4 bigint, primarykey(f1) . Make bidirectional flag and cache flag true. run trigger ,create log table in target db.Cache the table by -c "f1>10" -f f1,f2 .
6 # Insert record in target db with f1 values as f1>10 and f1<10 and f1 =10 and select from t1 it should shows records having f1 gretter than 10 of f1 and f2 field.
9 input
=${PWD}/cache
/Bidirectional
/mysqlcreatelogtable.sql
14 REL_PATH
=${PWD}/cache
/Bidirectional
17 cp $REL_PATH/csql.conf
/tmp
18 export CSQL_CONFIG_FILE
=/tmp
/csql.conf
19 echo DSN
=$DSN >>$CSQL_CONFIG_FILE
20 DS
="$DSN $DBUSER $PASSWORD"
21 rm -f /tmp
/csql
/csqlds.conf
22 touch /tmp
/csql
/csqlds.conf
23 $CSQL_INSTALL_ROOT/bin
/csqlds
-U $DBUSER -P $PASSWORD -D $DSN -N $TDB -a
28 if [ "$DSN" = "myodbc3" ]
30 LOG_FILE
=$REL_PATH/mysqlcreatelogtable.sql
31 TRI_FILE1
=$REL_PATH/trigger.sql
32 TRI_FILE2
=$REL_PATH/trigger1.sql
33 elif [ "$DSN" = "psql" ]
35 LOG_FILE
=$REL_PATH/psqlcreatelogtable.sql
36 TRI_FILE1
=$REL_PATH/trigger.psql
37 TRI_FILE2
=$REL_PATH/trigger1.psql
38 elif [ "$DSN" = "oracle" ]
40 LOG_FILE
=$REL_PATH/oraclecreatelogtable.sql
41 TRI_FILE1
=$REL_PATH/trigger.oracle
42 TRI_FILE2
=$REL_PATH/trigger1.oracle
43 elif [ "$DSN" = "sybase" ]
45 LOG_FILE
=$REL_PATH/sybasecreatelogtable.sql
46 TRI_FILE1
=$REL_PATH/trigger.sybase
47 TRI_FILE2
=$REL_PATH/trigger1.sybase
48 elif [ "$DSN" = "db2" ]
50 LOG_FILE
=$REL_PATH/db2createlogtable.sql
51 TRI_FILE1
=$REL_PATH/trigger.db2
52 TRI_FILE2
=$REL_PATH/trigger1.db2
60 isql
$DS < $LOG_FILE >/dev
/null
2>&1
64 echo "DSN is not set for target db"
68 echo Log table created
in target DB
70 rm -f /tmp
/csql
/csqltable.conf
71 touch /tmp
/csql
/csqltable.conf
72 if [ $DSN = "oracle" ]
74 echo "create table t1(f1 int ,f2 char(12),f3 smallint, f4 number(38),primary key(f1));">$REL_PATH/t1.sql
76 echo "create table t1(f1 int NOT NULL,f2 char(12),f3 smallint, f4 bigint,primary key(f1));">$REL_PATH/t1.sql
80 echo "insert into t1 values($a,'papu',12,$a+123124);"
81 done>>$REL_PATH/t1.sql
83 isql
$DS < $REL_PATH/t1.sql
>/dev
/null
2>&1
86 echo "unable to creste in target db"
87 rm -f $REL_PATH/t1.sql
90 isql
$DS <$TRI_FILE1 >/dev
/null
92 $CSQL_INSTALL_ROOT/bin
/csqlserver
>/dev
/null
2>&1 &
96 echo "drop table t1;">${REL_PATH}/dt1.sql
98 $CSQL_INSTALL_ROOT/bin
/cachetable
-t t1
-c "f1>10" -f f1
,f2
101 echo "Unable to cache"
102 isql
$DS <${REL_PATH}/dt1.sql
>/dev
/null
2>&1
103 rm -f $REL_PATH/t1.sql
${REL_PATH}/dt1.sql
104 isql
$DS <${REL_PATH}/mysqldeletelogtable.sql
>/dev
/null
2>&1
105 kill `ps -ef | grep csqlcacheserver | awk -F" " '{ print $2 }'`
107 ipcrm
-M 4000 -M 4500
110 echo "select * from t1;">$REL_PATH/sel.sql
111 $CSQL_INSTALL_ROOT/bin
/csql
-g -s $REL_PATH/sel.sql
115 isql
$DS <${REL_PATH}/dt1.sql
>/dev
/null
2>&1
116 rm -f $REL_PATH/t1.sql
${REL_PATH}/dt1.sql
$REL_PATH/sel.sql
117 isql
$DS <${REL_PATH}/mysqldeletelogtable.sql
>/dev
/null
2>&1
118 kill `ps -ef | grep csqlcacheserver | awk -F" " '{ print $2 }'`
120 ipcrm
-M 4000 -M 4500
124 echo "insert into t1 values(17,'papu',12,123124);">$REL_PATH/insert1.sql
125 echo "insert into t1 values(7,'biju',12,123125);">>$REL_PATH/insert1.sql
126 echo "insert into t1 values(10,'tapu',12,1231266);">>$REL_PATH/insert1.sql
127 isql
$DS < ${REL_PATH}/insert1.sql
>/dev
/null
2>&1
129 $CSQL_INSTALL_ROOT/bin
/csql
-g -s $REL_PATH/sel.sql
133 isql
$DS <${REL_PATH}/dt1.sql
>/dev
/null
2>&1
134 rm -f $REL_PATH/t1.sql
${REL_PATH}/dt1.sql
$REL_PATH/sel.sql
$REL_PATH/insert1.sql
135 isql
$DS <${REL_PATH}/mysqldeletelogtable.sql
>/dev
/null
2>&1
136 kill `ps -ef | grep csqlcacheserver | awk -F" " '{ print $2 }'`
138 ipcrm
-M 4000 -M 4500
142 $CSQL_INSTALL_ROOT/bin
/cachetable
-t t1
-u
143 isql
$DS <${REL_PATH}/dt1.sql
>/dev
/null
2>&1
144 isql
$DS <${REL_PATH}/mysqldeletelogtable.sql
>/dev
/null
2>&1
146 rm -f $REL_PATH/t1.sql
${REL_PATH}/dt1.sql
$REL_PATH/sel.sql
$REL_PATH/insert1.sql
147 kill `ps -ef | grep csqlcacheserver | awk -F" " '{ print $2 }'`
149 ipcrm
-M 4000 -M 4500