blob: 9f3b22568525e39e9def18f079d3148c18f17dcf [file] [log] [blame]
<?xml version="1.0" encoding="UTF-8"?>
<test-driver version="1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../testDefinition.xsd">
<!-- Description
# Servers 5
# Clients 6 durable
Purpose - Test if HA failover is working fine for durable client.
Details R = 2, Three Clients have durable Reg Int and another three is having non Durable Reg Int
-->
<data name="timedInterval">5m</data>
<data name="cacheType">CLIENT</data>
<data name="redundancyLevel">2</data>
<data name="distinctKeys">
<list>
<item>1000</item>
</list>
</data>
<data name="keyType">str</data>
<data name="sleepTime">
<oneof>
<item>20</item>
<item>30</item>
<item>40</item>
<item>50</item>
<item>60</item>
<item>90</item>
<item>120</item>
</oneof>
</data>
<data name="operation">
<oneof>
<item>stop</item>
<item>term</item>
<item>kill</item>
</oneof>
</data>
<data name="minServers">3</data>
<!--Default Values for this test only-->
<data name="isDurable">true</data>
<data name="keepAlive">true</data>
<data name="durableTimeout">120</data>
<data name="restartTime">20</data>
<data name="updateReceiveTime">60</data>
<data name="ThinClientRegionWithListener">
<snippet>
<region name="TestTCR1">
<region-attributes caching-enabled="true" client-notification="true">
<cache-listener library="durableclienttests" function="createDurableCacheListener"/>
</region-attributes>
</region>
</snippet>
</data>
<data name="regionSpec">ThinClientRegionWithListener</data>
<client-set name="JCS1" hostGroup="CS"/>
<client-set name="JCS2" hostGroup="CS"/>
<client-set name="JCS3" hostGroup="CS"/>
<client-set name="JCS4" hostGroup="CS"/>
<client-set name="JCS5" hostGroup="CS"/>
<client-set name="DClient1"/>
<client-set name="DClient2"/>
<client-set name="DClient3"/>
<client-set name="DClient4"/>
<client-set name="DClient5"/>
<client-set name="DClient6"/>
<client-set name="Feeder"/>
<test name="DurableFailoverR2" description="HA Failover test for durable client ">
<task name="setupCacheServers" action="doRunProcess" container="utils" waitTime="5m">
<data name="program">setupJavaServers</data>
<data name="arguments">-c 5 DurableClient/csNotifySubscription.xml</data>
<client-set name="JCS1"/>
</task>
<task name="StartCacheServer 1" action="doRunProcess" container="utils" waitTime="5m" parallel="true">
<data name="program">startJavaServers</data>
<data name="arguments">1</data>
<client-set name="JCS1"/>
</task>
<task name="StartCacheServer 2" action="doRunProcess" container="utils" waitTime="5m" parallel="true">
<data name="program">startJavaServers</data>
<data name="arguments">2</data>
<client-set name="JCS2"/>
</task>
<task name="StartCacheServer 3" action="doRunProcess" container="utils" waitTime="5m" parallel="true">
<data name="program">startJavaServers</data>
<data name="arguments">3</data>
<client-set name="JCS3"/>
</task>
<task name="StartCacheServer 4" action="doRunProcess" container="utils" waitTime="5m" parallel="true">
<data name="program">startJavaServers</data>
<data name="arguments">4</data>
<client-set name="JCS4"/>
</task>
<task name="StartCacheServer 5" action="doRunProcess" container="utils" waitTime="5m" parallel="true">
<data name="program">startJavaServers</data>
<data name="arguments">5</data>
<client-set name="JCS5"/>
</task>
<task name="Create Durable Clients" action="doCreateRegion" container="NewFwkLib.GemStone.GemFire.Cache.FwkLib.durableclienttests" waitTime="10m" argTypes="String,Int32">
<client-set name="DClient1"/>
<client-set name="DClient2"/>
<client-set name="DClient3"/>
<client-set name="DClient4"/>
<client-set name="DClient5"/>
<client-set name="DClient6"/>
</task>
<task name="Create Feeder" action="doCreateRegion" container="NewFwkLib.GemStone.GemFire.Cache.FwkLib.durableclienttests" waitTime="5m" argTypes="String,Int32">
<client-set name="Feeder"/>
<data name="isFeeder">true</data>
</task>
<task name="Register All Keys Durable" action="doRegisterAllKeys" container="NewFwkLib.GemStone.GemFire.Cache.FwkLib.durableclienttests" waitTime="5m" argTypes="String,Int32">
<data name="isDurableReg">true</data>
<client-set name="DClient1"/>
</task>
<task name="Register Interest List" action="doRegisterInterestList" container="NewFwkLib.GemStone.GemFire.Cache.FwkLib.durableclienttests" waitTime="5m" argTypes="String,Int32">
<data name="registerKeys">1000</data>
<data name="keyIndexBegin">1</data>
<data name="isDurableReg">true</data>
<client-set name="DClient2"/>
</task>
<task name="Register Regex List" action="doRegisterRegexList" container="NewFwkLib.GemStone.GemFire.Cache.FwkLib.durableclienttests" waitTime="5m" argTypes="String,Int32">
<data name="registerRegex">.*</data>
<data name="isDurableReg">true</data>
<client-set name="DClient3"/>
</task>
<task name="Register All Keys Durable" action="doRegisterAllKeys" container="NewFwkLib.GemStone.GemFire.Cache.FwkLib.durableclienttests" waitTime="5m" argTypes="String,Int32">
<client-set name="DClient4"/>
</task>
<task name="Register Interest List" action="doRegisterInterestList" container="NewFwkLib.GemStone.GemFire.Cache.FwkLib.durableclienttests" waitTime="5m" argTypes="String,Int32">
<data name="registerKeys">1000</data>
<data name="keyIndexBegin">1</data>
<client-set name="DClient5"/>
</task>
<task name="Register Regex List" action="doRegisterRegexList" container="NewFwkLib.GemStone.GemFire.Cache.FwkLib.durableclienttests" waitTime="5m" argTypes="String,Int32">
<data name="registerRegex">.*</data>
<client-set name="DClient6"/>
</task>
<task name="Incremental Puts" action="doIncrementalPuts" container="NewFwkLib.GemStone.GemFire.Cache.FwkLib.durableclienttests" waitTime="30m" parallel="true" argTypes="String,Int32">
<data name="valueEnd">100000</data>
<client-set name="Feeder"/>
</task>
<task name="stopStartCacheServer 1" action="doStopStartServer" container="utils" timesToRun="3" waitTime="30m" continueOnError="true" parallel="true">
<data name="ServerId">1</data>
<client-set name="JCS1"/>
</task>
<task name="stopStartCacheServer 2" action="doStopStartServer" container="utils" timesToRun="3" waitTime="30m" continueOnError="true" parallel="true">
<data name="ServerId">2</data>
<client-set name="JCS2"/>
</task>
<task name="stopStartCacheServer 3" action="doStopStartServer" container="utils" timesToRun="3" waitTime="30m" continueOnError="true" parallel="true">
<data name="ServerId">3</data>
<client-set name="JCS3"/>
</task>
<task name="stopStartCacheServer 4" action="doStopStartServer" container="utils" timesToRun="3" waitTime="30m" continueOnError="true" parallel="true">
<data name="ServerId">4</data>
<client-set name="JCS4"/>
</task>
<task name="stopStartCacheServer 5" action="doStopStartServer" container="utils" timesToRun="3" waitTime="30m" continueOnError="true" parallel="true">
<data name="ServerId">5</data>
<client-set name="JCS5"/>
</task>
<task name="Close Cycle for DC 1 " action="doCloseCacheAndReInitialize" container="NewFwkLib.GemStone.GemFire.Cache.FwkLib.durableclienttests" waitTime="25m" timesToRun="5" parallel="true" argTypes="String,Int32">
<data name="isDurableReg">true</data>
<data name="registerType">All</data>
<client-set name="DClient1"/>
</task>
<task name="Close Cycle for DC 2 " action="doCloseCacheAndReInitialize" container="NewFwkLib.GemStone.GemFire.Cache.FwkLib.durableclienttests" waitTime="25m" timesToRun="5" parallel="true" argTypes="String,Int32">
<data name="isDurableReg">true</data>
<data name="registerType">List</data>
<data name="registerKeys">1000</data>
<data name="keyIndexBegin">1</data>
<client-set name="DClient2"/>
</task>
<task name="Close Cycle for DC 3 " action="doCloseCacheAndReInitialize" container="NewFwkLib.GemStone.GemFire.Cache.FwkLib.durableclienttests" waitTime="25m" timesToRun="5" parallel="true" argTypes="String,Int32">
<data name="isDurableReg">true</data>
<data name="registerType">Regex</data>
<data name="registerRegex">.*</data>
<client-set name="DClient3"/>
</task>
<task name="Close Cycle for DC 4 " action="doCloseCacheAndReInitialize" container="NewFwkLib.GemStone.GemFire.Cache.FwkLib.durableclienttests" waitTime="25m" timesToRun="5" parallel="true" argTypes="String,Int32">
<data name="registerType">All</data>
<client-set name="DClient4"/>
</task>
<task name="Close Cycle for DC 5 " action="doCloseCacheAndReInitialize" container="NewFwkLib.GemStone.GemFire.Cache.FwkLib.durableclienttests" waitTime="25m" timesToRun="5" parallel="true" argTypes="String,Int32">
<data name="registerType">List</data>
<data name="registerKeys">1000</data>
<data name="keyIndexBegin">1</data>
<client-set name="DClient5"/>
</task>
<task name="Close Cycle for DC 6 " action="doCloseCacheAndReInitialize" container="NewFwkLib.GemStone.GemFire.Cache.FwkLib.durableclienttests" waitTime="25m" timesToRun="5" parallel="true" argTypes="String,Int32">
<data name="registerType">Regex</data>
<data name="registerRegex">.*</data>
<client-set name="DClient6"/>
</task>
<task name="doSleep" action="doSleep" container="utils" waitTime="5m">
<data name="sleepTime">120</data>
<client-set name="DClient1"/>
<client-set name="DClient2"/>
<client-set name="DClient3"/>
<client-set name="DClient4"/>
<client-set name="DClient5"/>
<client-set name="DClient6"/>
</task>
<task name="Close Cache" action="doCloseCache" container="NewFwkLib.GemStone.GemFire.Cache.FwkLib.durableclienttests" waitTime="5m" argTypes="String,Int32">
<client-set name="DClient1"/>
<client-set name="DClient2"/>
<client-set name="DClient3"/>
<client-set name="DClient4"/>
<client-set name="DClient5"/>
<client-set name="DClient6"/>
<client-set name="Feeder"/>
</task>
<task name="Verify" action="doVerifyEventCount" container="NewFwkLib.GemStone.GemFire.Cache.FwkLib.durableclienttests" waitTime="5m" argTypes="String,Int32">
<client-set name="DClient1"/>
<client-set name="DClient2"/>
<client-set name="DClient3"/>
</task>
<task name="Verify" action="doVerifyEventCount" container="NewFwkLib.GemStone.GemFire.Cache.FwkLib.durableclienttests" waitTime="5m" argTypes="String,Int32">
<client-set name="DClient4"/>
<client-set name="DClient5"/>
<client-set name="DClient6"/>
<data name="missedEvents">true</data>
</task>
<task name="StopCacheServer 1" action="doRunProcess" container="utils" waitTime="5m" parallel="true">
<data name="program">stopJavaServers</data>
<data name="arguments">1</data>
<client-set name="JCS1"/>
</task>
<task name="StopCacheServer 2" action="doRunProcess" container="utils" waitTime="5m" parallel="true">
<data name="program">stopJavaServers</data>
<data name="arguments">2</data>
<client-set name="JCS2"/>
</task>
<task name="StopCacheServer 3" action="doRunProcess" container="utils" waitTime="5m" parallel="true">
<data name="program">stopJavaServers</data>
<data name="arguments">3</data>
<client-set name="JCS3"/>
</task>
<task name="StopCacheServer 4" action="doRunProcess" container="utils" waitTime="5m" parallel="true">
<data name="program">stopJavaServers</data>
<data name="arguments">4</data>
<client-set name="JCS4"/>
</task>
<task name="StopCacheServer 5" action="doRunProcess" container="utils" waitTime="5m" parallel="true">
<data name="program">stopJavaServers</data>
<data name="arguments">5</data>
<client-set name="JCS5"/>
</task>
</test>
</test-driver>