4 # Bi-directional cache test
5 # Create table t1 with field f1 int unique, f2 char,f3 smallint , f4 bigint ,primary key(f2,f3) . Make bidirectional flag and cache flag true. run trigger ,create log table in target db.Cache the table by -f f1,f2,f3 -p f1 . insert record with 4 field .and select from t1 it should three field values.
8 input
=${PWD}/cache
/Bidirectional
/mysqlcreatelogtable.sql
13 REL_PATH
=${PWD}/cache
/Bidirectional
16 cp $REL_PATH/csql.conf
/tmp
17 export CSQL_CONFIG_FILE
=/tmp
/csql.conf
18 echo DSN
=$DSN >>$CSQL_CONFIG_FILE
19 DS
="$DSN $DBUSER $PASSWORD"
20 rm -f /tmp
/csql
/csqlds.conf
21 touch /tmp
/csql
/csqlds.conf
22 $CSQL_INSTALL_ROOT/bin
/csqlds
-U $DBUSER -P $PASSWORD -D $DSN -N $TDB -a
27 if [ "$DSN" = "myodbc3" ]
29 LOG_FILE
=$REL_PATH/mysqlcreatelogtable.sql
30 TRI_FILE1
=$REL_PATH/trigger.sql
31 TRI_FILE2
=$REL_PATH/trigger1.sql
32 elif [ "$DSN" = "psql" ]
34 LOG_FILE
=$REL_PATH/psqlcreatelogtable.sql
35 TRI_FILE1
=$REL_PATH/trigger.psql
36 TRI_FILE2
=$REL_PATH/trigger1.psql
37 elif [ "$DSN" = "oracle" ]
39 LOG_FILE
=$REL_PATH/oraclecreatelogtable.sql
40 TRI_FILE1
=$REL_PATH/trigger.oracle
41 TRI_FILE2
=$REL_PATH/trigger1.oracle
42 elif [ "$DSN" = "sybase" ]
44 LOG_FILE
=$REL_PATH/sybasecreatelogtable.sql
45 TRI_FILE1
=$REL_PATH/trigger.sybase
46 TRI_FILE2
=$REL_PATH/trigger1.sybase
47 elif [ "$DSN" = "db2" ]
49 LOG_FILE
=$REL_PATH/db2createlogtable.sql
50 TRI_FILE1
=$REL_PATH/trigger.db2
51 TRI_FILE2
=$REL_PATH/trigger1.db2
59 isql
$DS < $LOG_FILE >/dev
/null
2>&1
62 echo "DSN is not set for target db"
66 echo Log table created
in target DB
68 rm -f /tmp
/csql
/csqltable.conf
69 touch /tmp
/csql
/csqltable.conf
70 echo "create table t1(f1 int ,f2 char(12),f3 int, f4 int,primary key(f2));">$REL_PATH/t1.sql
74 echo "create table t1(f1 int not null,f2 char(12) not null,f3 int, f4 int,primary key(f2));">$REL_PATH/t1.sql
77 echo "create unique index ind on t1(f1) ;">>$REL_PATH/t1.sql
80 echo "insert into t1 values($a,'papu$a',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
97 if [ $DSN = "oracle" -o $DSN = "sybase" -o $DSN = "db2" ]
100 $CSQL_INSTALL_ROOT/bin
/cachetable
-t t1
-c "f1>10" -f f1
,f3
,f2
-p f1
-F
103 echo "Unable to cache"
104 isql
$DS <${REL_PATH}/dt1.sql
>/dev
/null
2>&1
105 rm -f $REL_PATH/t1.sql
${REL_PATH}/dt1.sql
106 isql
$DS <${REL_PATH}/mysqldeletelogtable.sql
>/dev
/null
2>&1
107 kill `ps -ef | grep csqlcacheserver | awk -F" " '{ print $2 }'`
109 ipcrm
-M 4000 -M 4500
115 $CSQL_INSTALL_ROOT/bin
/cachetable
-t t1
-c "f1>10" -f f1
,f3
,f2
-p f1
118 echo "Unable to cache"
119 isql
$DS <${REL_PATH}/dt1.sql
>/dev
/null
2>&1
120 rm -f $REL_PATH/t1.sql
${REL_PATH}/dt1.sql
121 isql
$DS <${REL_PATH}/mysqldeletelogtable.sql
>/dev
/null
2>&1
122 kill `ps -ef | grep csqlcacheserver | awk -F" " '{ print $2 }'`
124 ipcrm
-M 4000 -M 4500
130 echo "select * from t1;">$REL_PATH/sel.sql
131 $CSQL_INSTALL_ROOT/bin
/csql
-g -s $REL_PATH/sel.sql
135 isql
$DS <${REL_PATH}/dt1.sql
>/dev
/null
2>&1
136 rm -f $REL_PATH/t1.sql
${REL_PATH}/dt1.sql
$REL_PATH/sel.sql
137 isql
$DS <${REL_PATH}/mysqldeletelogtable.sql
>/dev
/null
2>&1
138 kill `ps -e | grep csqlcacheserver | awk -F" " '{ print $1 }'`
140 ipcrm
-M 4000 -M 4500
144 echo "insert into t1 values(17,'papu',12,123124);">$REL_PATH/insert1.sql
145 echo "insert into t1 values(7,'biju',12,123125);">>$REL_PATH/insert1.sql
146 echo "insert into t1 values(10,'tapu',12,1231266);">>$REL_PATH/insert1.sql
147 isql
$DS < ${REL_PATH}/insert1.sql
>/dev
/null
2>&1
149 $CSQL_INSTALL_ROOT/bin
/csql
-g -s $REL_PATH/sel.sql
153 isql
$DS <${REL_PATH}/dt1.sql
>/dev
/null
2>&1
154 rm -f $REL_PATH/t1.sql
${REL_PATH}/dt1.sql
$REL_PATH/sel.sql
$REL_PATH/insert1.sql
155 isql
$DS <${REL_PATH}/mysqldeletelogtable.sql
>/dev
/null
2>&1
156 kill `ps -ef | grep csqlcacheserver | awk -F" " '{ print $2 }'`
158 ipcrm
-M 4000 -M 4500
162 $CSQL_INSTALL_ROOT/bin
/cachetable
-t t1
-u
163 isql
$DS <${REL_PATH}/dt1.sql
>/dev
/null
2>&1
164 isql
$DS <${REL_PATH}/mysqldeletelogtable.sql
>/dev
/null
2>&1
166 rm -f $REL_PATH/t1.sql
${REL_PATH}/dt1.sql
$REL_PATH/sel.sql
$REL_PATH/insert1.sql
167 kill `ps -ef | grep csqlcacheserver | awk -F" " '{ print $2 }'`
169 ipcrm
-M 4000 -M 4500