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 TESTNO="036"
0037 export TESTNAME_SHORT="tprecover"
0038 export TESTNAME="test${TESTNO}_${TESTNAME_SHORT}"
0039
0040 PWD=`pwd`
0041 if [ `echo $PWD | grep $TESTNAME ` ]; then
0042
0043 echo > /dev/null
0044 else
0045
0046 pushd .
0047 echo "Doing cd"
0048 cd $TESTNAME
0049 fi;
0050
0051 . ../testenv.sh
0052
0053 export TESTDIR="$NDRX_APPHOME/atmitest/$TESTNAME"
0054 export PATH=$PATH:$TESTDIR
0055
0056 export NDRX_TOUT=9999
0057 export NDRX_SILENT=Y
0058
0059
0060
0061
0062 function 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 NDRX_DEBUG_CONF=$TESTDIR/debug-dom1.conf
0069 }
0070
0071
0072
0073
0074 function set_dom2 {
0075 echo "Setting domain 2"
0076 . ../dom2.sh
0077 export NDRX_CONFIG=$TESTDIR/ndrxconfig-dom2.xml
0078 export NDRX_DMNLOG=$TESTDIR/ndrxd-dom2.log
0079 export NDRX_LOG=$TESTDIR/ndrx-dom2.log
0080 export NDRX_DEBUG_CONF=$TESTDIR/debug-dom2.conf
0081 }
0082
0083
0084
0085
0086 function go_out {
0087 echo "Test exiting with: $1"
0088
0089 set_dom1;
0090 xadmin stop -y
0091 xadmin down -y
0092
0093 set_dom2;
0094 xadmin stop -y
0095 xadmin down -y
0096
0097
0098 xadmin killall atmiclt36
0099
0100 popd 2>/dev/null
0101 exit $1
0102 }
0103
0104 rm *dom*.log
0105
0106 xadmin killall tpbridge
0107
0108 set_dom1;
0109 xadmin down -y
0110 xadmin start -y || go_out 1
0111 xadmin psc
0112
0113 set_dom2;
0114 xadmin down -y
0115 xadmin start -y || go_out 2
0116 xadmin psc
0117
0118
0119 sleep 30
0120
0121 set_dom1;
0122
0123 echo "Before ndrxd kill - dom1"
0124 xadmin ppm
0125
0126 set_dom2;
0127 echo "Before ndrxd kill - dom2"
0128 xadmin ppm
0129
0130 xadmin killall ndrxd
0131
0132
0133 sleep 60
0134
0135 echo "Before ndrxd kill - dom2"
0136 echo "We should be ready back online"
0137 xadmin ppm
0138 echo ">>> Checking services..."
0139 xadmin psc
0140
0141 num_lines=`xadmin psc 2>/dev/null | grep "2 SVC36" |wc -l | awk '{print $1}'`
0142 if [ "X$num_lines" != "X10" ]; then
0143 echo "Expected 10 lines of [2 SVC36] in output, got $num_lines"
0144 go_out -1
0145 fi
0146
0147 OUT=`xadmin ppm | grep BrC`
0148
0149 if [ "X$OUT" == "X" ]; then
0150 echo "TESTERROR, the domain2 does not contain connected bridge!"
0151 go_out 1
0152 fi
0153
0154
0155 set_dom1;
0156
0157 echo "Before ndrxd kill - dom1"
0158 echo "We should be ready back online"
0159 xadmin ppm
0160 xadmin psc
0161
0162 OUT=`xadmin ppm | grep BrC`
0163
0164 if [[ "X$OUT" == "X" ]]; then
0165 echo "TESTERROR, the domain1 does not contain connected bridge!"
0166 go_out 2
0167 fi
0168
0169
0170
0171 OUT=`xadmin psc | grep SVC36`
0172
0173
0174 if [[ "X$OUT" == "X" ]]; then
0175 echo "TESTERROR, the domain1 does not contain other domain's services, missing: SVC36!"
0176 go_out 3
0177 fi
0178
0179 echo "Perform PING tests... - put ndrxd to sleep"
0180
0181 echo "*************"
0182 xadmin ps | grep ndrxd
0183 echo "************* EPS"
0184
0185 DPID=`xadmin dpid`
0186 xadmin dsleep 20
0187
0188 echo "Echo sleep for 20 to respawn back..."
0189 sleep 20
0190
0191 DPID2=`xadmin dpid`
0192
0193 echo "before pid=$DPID after pid=$DPID2"
0194
0195 if [ "X$" == "X$DPID2" ]; then
0196 echo "TESTERROR, ndrxd not started!"
0197 go_out 4
0198 fi
0199
0200 if [ "X$DPID" == "X$DPID2" ]; then
0201 echo "TESTERROR, PIDS not switched, before=$DPID, after=$DPID2"
0202 go_out 5
0203 fi
0204
0205 RET=0
0206
0207 go_out $RET
0208
0209