3 # 1.Make sure Default DSN is psql(CACHE_TABLE=psql)
4 # DSN entries in csqlds.conf file for MySQL and Postgres.
5 # Create table 't1'and 't2' in MySQL with all supported
6 # data types in it with 5 records.
7 # Create table 'tt1' and 'tt2' in Postgres with all supported
8 # data type with 5 records.
9 # cache 't1' from MySQL and 'tt1' from Postgres.
10 # Select records from 't1' and 'tt1' table using Gateway,
11 # it should fetch the records from csql.
12 # Select records from 't2' and 'tt2' using gateway,
13 # it should fetch the records from their respective TDB.
15 # Run thsi test only under csql/test or on this directory,
16 # Otherwise it may fail.
18 input
=${PWD}/cache
/MultiDsn
/Gateway
/mysqltable.sql
22 REL_PATH
=${PWD}/cache
/MultiDsn
/Gateway
26 cp $REL_PATH/csql.conf
/tmp
27 export CSQL_CONFIG_FILE
=/tmp
/csql.conf
29 echo DSN
=$POSTGRES_DSN >>$CSQL_CONFIG_FILE
31 rm -f /tmp
/csql
/csqlds.conf
32 touch /tmp
/csql
/csqlds.conf
34 ########## csqlds.conf entries #########
36 $CSQL_INSTALL_ROOT/bin
/csqlds
-U $MYSQL_USER -P $MYSQL_PASSWORD -D $MYSQL_DSN -N $MYSQL_TDB -a
41 echo "Entries made for $MYSQL_DSN in csqlds.conf file."
43 $CSQL_INSTALL_ROOT/bin
/csqlds
-U $POSTGRES_USER -P $POSTGRES_PASSWORD -D $POSTGRES_DSN -N $POSTGRES_TDB -a
48 echo "Entries made for $POSTGRES_DSN in csqlds.conf file."
50 ########## END #########
53 ########## Table in MYSQL and POSTGRES #######
55 isql
$DS1 < ${REL_PATH}/mysqltable.sql
>/dev
/null
2>&1
60 echo "Table 't1 and t2' is created in $MYSQL_DSN"
62 echo "SELECT records from $MYSQL_DSN"
63 isql
$DS1 < ${REL_PATH}/mysqlselect.sql
66 isql
$DS1 < ${REL_PATH}/drop.sql
>/dev
/null
2>&1
70 isql
$DS2 < ${REL_PATH}/psqltable.sql
>/dev
/null
2>&1
73 isql
$DS1 < ${REL_PATH}/drop.sql
>/dev
/null
2>&1
74 isql
$DS2 < ${REL_PATH}/drop.sql
>/dev
/null
2>&1
77 echo "Table 'tt1 and tt2' is created in $POSTGRES_DSN"
79 echo "SELECT records from $POSTGRES_DSN"
80 isql
$DS2 < ${REL_PATH}/psqlselect.sql
83 isql
$DS2 < ${REL_PATH}/drop.sql
>/dev
/null
2>&1
87 ######### END #########
90 rm -f /tmp
/csql
/csqltable.conf
91 touch /tmp
/csql
/csqltable.conf
93 $CSQL_INSTALL_ROOT/bin
/csqlserver
>/dev
/null
2>&1 &
97 ######### Cache t1 and tt1 table ##########
100 $CSQL_INSTALL_ROOT/bin
/cachetable
-t t1
-d $MYSQL_DSN >/dev
/null
2>&1
104 ipcrm
-M 1199 -M 2277
105 isql
$DS1 < ${REL_PATH}/drop.sql
>/dev
/null
2>&1
106 isql
$DS2 < ${REL_PATH}/drop.sql
>/dev
/null
2>&1
109 echo "Table t1 is cached from $MYSQL_DSN."
111 $CSQL_INSTALL_ROOT/bin
/cachetable
-t tt1
-d >/dev
/null
2>&1
115 ipcrm
-M 1199 -M 2277
116 isql
$DS1 < ${REL_PATH}/drop.sql
>/dev
/null
2>&1
117 isql
$DS2 < ${REL_PATH}/drop.sql
>/dev
/null
2>&1
120 echo "Table 'tt1' is cached from $POSTGRES_DSN."
122 ######## END ########
125 ####### Fetch cached tables and non-cache table ######
128 echo "Select records using Gateway(csql -g)"
129 echo "select records from t1 and t2"
130 $CSQL_INSTALL_ROOT/bin
/csql
-g -s $REL_PATH/mysqlselect.sql
134 ipcrm
-M 1199 -M 2277
135 isql
$DS1 < ${REL_PATH}/drop.sql
>/dev
/null
2>&1
136 isql
$DS2 < ${REL_PATH}/drop.sql
>/dev
/null
2>&1
140 echo "select records from tt1 and tt2."
141 $CSQL_INSTALL_ROOT/bin
/csql
-g -s $REL_PATH/psqlselect.sql
145 ipcrm
-M 1199 -M 2277
146 isql
$DS1 < ${REL_PATH}/drop.sql
>/dev
/null
2>&1
147 isql
$DS2 < ${REL_PATH}/drop.sql
>/dev
/null
2>&1
151 rm -f /tmp
/csql
/csqltable.conf
152 touch /tmp
/csql
/csqltable.conf
154 isql
$DS1 < ${REL_PATH}/drop.sql
>/dev
/null
2>&1
155 isql
$DS2 < ${REL_PATH}/drop.sql
>/dev
/null
2>&1
158 $CSQL_INSTALL_ROOT/bin
/csql
-s $REL_PATH/drop.sql
> /dev
/null
2>&1
160 ipcrm
-M 1199 -M 2277
163 ######### END #########