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 sc -t CACHED
0150 xadmin pc
0151
0152 echo "Domain 2 info"
0153 set_dom2;
0154 xadmin psc
0155 xadmin ppm
0156 xadmin sc -t CACHED
0157 xadmin pc
0158
0159 echo "Domain 3 info"
0160 set_dom3;
0161 xadmin psc
0162 xadmin ppm
0163 xadmin sc -t CACHED
0164 xadmin pc
0165
0166
0167 echo "Running off client on domain 1"
0168 set_dom1;
0169
0170 (time ./testtool48 -sTESTSV16 -b '{"T_STRING_FLD":"KEY1","T_STRING_2_FLD":"DOM1","T_SHORT_FLD":"1"}' \
0171 -m '{"T_STRING_FLD":"KEY1","T_STRING_2_FLD":"DOM1","T_SHORT_FLD":"1"}' \
0172 -cY -n50 -fY 2>&1) > ./16_testtool48.log
0173
0174 if [ $? -ne 0 ]; then
0175 echo "testtool48 failed (1)"
0176 go_out 1
0177 fi
0178
0179 (time ./testtool48 -sTESTSV16 -b '{"T_STRING_FLD":"KEY1","T_STRING_2_FLD":"DOM1","T_SHORT_FLD":"2"}' \
0180 -m '{"T_STRING_FLD":"KEY1","T_STRING_2_FLD":"DOM1","T_SHORT_FLD":"2"}' \
0181 -cY -n50 -fY 2>&1) >> ./16_testtool48.log
0182
0183 if [ $? -ne 0 ]; then
0184 echo "testtool48 failed (2)"
0185 go_out 1
0186 fi
0187
0188
0189 (time ./testtool48 -sTESTSV16 -b '{"T_STRING_FLD":"KEY1","T_STRING_2_FLD":"DOM1","T_SHORT_FLD":"3"}' \
0190 -m '{"T_STRING_FLD":"KEY1","T_STRING_2_FLD":"DOM1","T_SHORT_FLD":"3"}' \
0191 -cY -n50 -fY 2>&1) >> ./16_testtool48.log
0192
0193 if [ $? -ne 0 ]; then
0194 echo "testtool48 failed (3)"
0195 go_out 1
0196 fi
0197
0198 (time ./testtool48 -sTESTSV16 -b '{"T_STRING_FLD":"KEY1","T_STRING_2_FLD":"DOM1","T_SHORT_FLD":"4"}' \
0199 -m '{"T_STRING_FLD":"KEY1","T_STRING_2_FLD":"DOM1","T_SHORT_FLD":"4"}' \
0200 -cY -n50 -fY 2>&1) >> ./16_testtool48.log
0201
0202 if [ $? -ne 0 ]; then
0203 echo "testtool48 failed (4)"
0204 go_out 1
0205 fi
0206
0207 echo "sleeping 110 for next record"
0208 sleep 110
0209
0210 (time ./testtool48 -sTESTSV16 -b '{"T_STRING_FLD":"KEY2","T_STRING_2_FLD":"DOM1","T_SHORT_FLD":"4"}' \
0211 -m '{"T_STRING_FLD":"KEY2","T_STRING_2_FLD":"DOM1","T_SHORT_FLD":"4"}' \
0212 -cY -n50 -fY 2>&1) >> ./16_testtool48.log
0213
0214 if [ $? -ne 0 ]; then
0215 echo "testtool48 failed (5)"
0216 go_out 1
0217 fi
0218
0219 echo "List group..."
0220 xadmin cs k@db16
0221 ensure_keys g@db16 2
0222 ensure_keys k@db16 5
0223
0224 xadmin bc -t CACHED
0225 echo "Sleep 11, wait for cached to kill the records"
0226 sleep 11
0227
0228 echo "Testing DOM 1"
0229
0230 ensure_keys g@db16 1
0231 ensure_keys k@db16 1
0232
0233 xadmin cs g@db16
0234 xadmin cs k@db16
0235
0236 xadmin cd -d g@db16 -k SV16KEY1 -i
0237
0238 ensure_field g@db16 SV16KEY1 EX_CACHE_OPEXPR SV16KEY1-SV161 0
0239 ensure_field g@db16 SV16KEY1 EX_CACHE_OPEXPR SV16KEY1-SV164 0
0240 ensure_field g@db16 SV16KEY2 EX_CACHE_OPEXPR SV16KEY2-SV164 1
0241
0242
0243 echo "Testing DOM 2"
0244 set_dom2;
0245
0246 ensure_keys g@db16 1
0247 ensure_keys k@db16 1
0248
0249 xadmin cs g@db16
0250 xadmin cs k@db16
0251
0252 xadmin cd -d g@db16 -k SV16KEY1 -i
0253
0254 ensure_field g@db16 SV16KEY1 EX_CACHE_OPEXPR SV16KEY1-SV161 0
0255 ensure_field g@db16 SV16KEY1 EX_CACHE_OPEXPR SV16KEY1-SV164 0
0256 ensure_field g@db16 SV16KEY2 EX_CACHE_OPEXPR SV16KEY2-SV164 1
0257
0258 echo "Testing DOM 3"
0259 set_dom3;
0260
0261 ensure_keys g@db16 1
0262 ensure_keys k@db16 1
0263
0264 xadmin cs g@db16
0265 xadmin cs k@db16
0266
0267 xadmin cd -d g@db16 -k SV16KEY1 -i
0268
0269 ensure_field g@db16 SV16KEY1 EX_CACHE_OPEXPR SV16KEY1-SV161 0
0270 ensure_field g@db16 SV16KEY1 EX_CACHE_OPEXPR SV16KEY1-SV164 0
0271 ensure_field g@db16 SV16KEY2 EX_CACHE_OPEXPR SV16KEY2-SV164 1
0272
0273 go_out $RET
0274
0275