0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017
0018
0019
0020
0021
0022
0023
0024
0025
0026
0027
0028
0029
0030
0031
0032
0033
0034
0035
0036 export TESTNAME="test048_cache"
0037
0038 PWD=`pwd`
0039 if [ `echo $PWD | grep $TESTNAME ` ]; then
0040
0041 echo > /dev/null
0042 else
0043
0044 pushd .
0045 echo "Doing cd"
0046 cd $TESTNAME
0047 fi;
0048
0049 export NDRX_CCONFIG=`pwd`
0050 . ../testenv.sh
0051
0052 export TESTDIR="$NDRX_APPHOME/atmitest/$TESTNAME"
0053 export PATH=$PATH:$TESTDIR
0054 export NDRX_TOUT=10
0055 export NDRX_ULOG=$TESTDIR
0056
0057 source ./test-func-include.sh
0058
0059
0060
0061
0062 set_dom1() {
0063 echo "Setting domain 1"
0064 . ../dom1.sh
0065 export NDRX_CONFIG=$TESTDIR/ndrxconfig-dom1.xml
0066 export NDRX_DMNLOG=$TESTDIR/ndrxd-dom1.log
0067 export NDRX_LOG=$TESTDIR/ndrx-dom1.log
0068 export TESTDIR_DB=$TESTDIR
0069 export TESTDIR_SHM=$TESTDIR
0070 export NDRX_CCTAG=dom1
0071 }
0072
0073 set_dom2() {
0074 echo "Setting domain 2"
0075 . ../dom2.sh
0076 export NDRX_CONFIG=$TESTDIR/ndrxconfig-dom2.xml
0077 export NDRX_DMNLOG=$TESTDIR/ndrxd-dom2.log
0078 export NDRX_LOG=$TESTDIR/ndrx-dom2.log
0079 export TESTDIR_DB=$TESTDIR/dom2
0080 export TESTDIR_SHM=$TESTDIR/dom2
0081 export NDRX_CCTAG=dom2
0082 }
0083
0084 set_dom3() {
0085 echo "Setting domain 3"
0086 . ../dom3.sh
0087 export NDRX_CONFIG=$TESTDIR/ndrxconfig-dom3.xml
0088 export NDRX_DMNLOG=$TESTDIR/ndrxd-dom3.log
0089 export NDRX_LOG=$TESTDIR/ndrx-dom3.log
0090 export TESTDIR_DB=$TESTDIR/dom3
0091 export TESTDIR_SHM=$TESTDIR/dom3
0092 export NDRX_CCTAG=dom3
0093 }
0094
0095
0096
0097
0098 function go_out {
0099 echo "Test exiting with: $1"
0100
0101 set_dom1;
0102 xadmin stop -y
0103 xadmin down -y
0104
0105
0106 set_dom2;
0107 xadmin stop -y
0108 xadmin down -y
0109
0110 set_dom3;
0111 xadmin stop -y
0112 xadmin down -y
0113
0114
0115 xadmin killall atmiclt48
0116
0117 popd 2>/dev/null
0118 exit $1
0119 }
0120
0121 rm *.log
0122
0123 xadmin killall tpbridge
0124
0125 echo "Booting domain 1"
0126 set_dom1;
0127 xadmin down -y
0128 xadmin start -y || go_out 1
0129
0130 echo "Booting domain 2"
0131 set_dom2;
0132 xadmin down -y
0133 xadmin start -y || go_out 1
0134
0135 echo "Booting domain 3"
0136 set_dom3;
0137 xadmin down -y
0138 xadmin start -y || go_out 1
0139
0140 echo "Let clients to boot & links to establish..."
0141 sleep 60
0142
0143 RET=0
0144
0145 echo "Domain 1 info"
0146 set_dom1;
0147 xadmin psc
0148 xadmin ppm
0149 xadmin pc
0150
0151
0152 echo "Domain 2 info"
0153 set_dom2;
0154 xadmin psc
0155 xadmin ppm
0156 xadmin pc
0157
0158 echo "Domain 3 info"
0159 set_dom3;
0160 xadmin psc
0161 xadmin ppm
0162 xadmin pc
0163
0164
0165 echo "Run "
0166 set_dom1;
0167
0168 (time ./testtool48 -sTESTSV20 -b '{"T_STRING_FLD":"KEY1","T_STRING_2_FLD":"CACHE1","T_LONG_3_FLD":"1"}' \
0169 -m '{"T_STRING_FLD":"KEY1","T_STRING_2_FLD":"CACHE1","T_LONG_3_FLD":"1"}' \
0170 -cY -n50 -fY 2>&1) > ./20_testtool48.log
0171
0172 if [ $? -ne 0 ]; then
0173 echo "testtool48 failed (1)"
0174 go_out 1
0175 fi
0176
0177 (time ./testtool48 -sTESTSV20 -b '{"T_STRING_FLD":"KEY2","T_STRING_2_FLD":"CACHE2","T_LONG_3_FLD":"2"}' \
0178 -m '{"T_STRING_FLD":"KEY2","T_STRING_2_FLD":"CACHE2","T_LONG_3_FLD":"2"}' \
0179 -cY -n50 -fY 2>&1) >> ./20_testtool48.log
0180
0181 if [ $? -ne 0 ]; then
0182 echo "testtool48 failed (2)"
0183 go_out 2
0184 fi
0185
0186 (time ./testtool48 -sTESTSV20 -b '{"T_STRING_FLD":"KEY3","T_STRING_2_FLD":"CACHE3","T_LONG_3_FLD":"3"}' \
0187 -m '{"T_STRING_FLD":"KEY3","T_STRING_2_FLD":"CACHE3","T_LONG_3_FLD":"3"}' \
0188 -cY -n50 -fY 2>&1) >> ./20_testtool48.log
0189
0190 if [ $? -ne 0 ]; then
0191 echo "testtool48 failed (3)"
0192 go_out 3
0193 fi
0194
0195 (time ./testtool48 -sTESTSV20 -b '{"T_STRING_FLD":"KEY4","T_STRING_2_FLD":"CACHE4","T_LONG_3_FLD":"4"}' \
0196 -m '{"T_STRING_FLD":"KEY4","T_STRING_2_FLD":"CACHE4","T_LONG_3_FLD":"4"}' \
0197 -cY -n50 -fY 2>&1) >> ./20_testtool48.log
0198
0199 if [ $? -ne 0 ]; then
0200 echo "testtool48 failed (4)"
0201 go_out 4
0202 fi
0203
0204 echo "Calling inval..."
0205
0206 (time ./testtool48 -sTESTSV20I -b '{"T_STRING_FLD":"KEY1","T_STRING_2_FLD":"CACHE1","T_LONG_3_FLD":"1"}' \
0207 -m '{"T_STRING_FLD":"KEY1","T_STRING_2_FLD":"CACHE1","T_LONG_3_FLD":"1"}' \
0208 -cY -n1 -fY 2>&1) > ./20_testtool48.log
0209
0210 if [ $? -ne 0 ]; then
0211 echo "testtool48 failed (5)"
0212 go_out 5
0213 fi
0214
0215 (time ./testtool48 -sTESTSV20I -b '{"T_STRING_FLD":"KEY2","T_STRING_2_FLD":"CACHE2","T_LONG_3_FLD":"2"}' \
0216 -m '{"T_STRING_FLD":"KEY2","T_STRING_2_FLD":"CACHE2","T_LONG_3_FLD":"2"}' \
0217 -cY -n1 -fY 2>&1) >> ./20_testtool48.log
0218
0219 if [ $? -ne 0 ]; then
0220 echo "testtool48 failed (6)"
0221 go_out 6
0222 fi
0223
0224 (time ./testtool48 -sTESTSV20I -b '{"T_STRING_FLD":"KEY3","T_STRING_2_FLD":"CACHE3","T_LONG_3_FLD":"3"}' \
0225 -m '{"T_STRING_FLD":"KEY3","T_STRING_2_FLD":"CACHE3","T_LONG_3_FLD":"3"}' \
0226 -cY -n1 -fY 2>&1) >> ./20_testtool48.log
0227
0228 if [ $? -ne 0 ]; then
0229 echo "testtool48 failed (7)"
0230 go_out 7
0231 fi
0232
0233 (time ./testtool48 -sTESTSV20I -b '{"T_STRING_FLD":"KEY4","T_STRING_2_FLD":"CACHE4","T_LONG_3_FLD":"4"}' \
0234 -m '{"T_STRING_FLD":"KEY4","T_STRING_2_FLD":"CACHE4","T_LONG_3_FLD":"4"}' \
0235 -cY -n1 -fY 2>&1) >> ./20_testtool48.log
0236
0237 if [ $? -ne 0 ]; then
0238 echo "testtool48 failed (8)"
0239 go_out 8
0240 fi
0241
0242
0243 echo "let messages to bcast"
0244 sleep 3
0245 echo "Testing domain 1"
0246 ensure_keys db20 0
0247
0248
0249 echo "Testing domain 2"
0250 set_dom2;
0251
0252 ensure_keys db20 2
0253
0254 xadmin cs db20
0255
0256 ensure_field db20 SV20_1KEY1 T_STRING_2_FLD CACHE1 1
0257 ensure_field db20 SV20_2KEY2 T_STRING_2_FLD CACHE2 0
0258 ensure_field db20 SV20_3KEY3 T_STRING_2_FLD CACHE3 1
0259 ensure_field db20 SV20_4KEY4 T_STRING_2_FLD CACHE4 0
0260
0261
0262 echo "Testing domain 3"
0263 set_dom3;
0264
0265 xadmin cs db20
0266
0267 ensure_keys db20 2
0268 ensure_field db20 SV20_1KEY1 T_STRING_2_FLD CACHE1 1
0269 ensure_field db20 SV20_2KEY2 T_STRING_2_FLD CACHE2 0
0270 ensure_field db20 SV20_3KEY3 T_STRING_2_FLD CACHE3 1
0271 ensure_field db20 SV20_4KEY4 T_STRING_2_FLD CACHE4 0
0272
0273 go_out $RET
0274
0275