Hi,
I was facing the *"Region not found"* exception when I do the following on
local machine (single Node) :
And, I don't see the exception when I was trying to perform remote debug
which introduced some time lapse. I tried to introduce some `sleep` , but
of no use
Can you please help and let me know what I could be possibly doing wrong?
*Geode version: 1.0.0-incubating.M3*
1. *Start a locator : *
start locator --name=testlocator --include-system-classpath
2. *Start two servers:*
- start server --name=testserver1
--cache-xml-file=SITMultiServerMultiRegion1.cache.xml
--locators=localhost[10334] --server-port=30303
--include-system-classpath
- start server --name=testserver2
--cache-xml-file=SITMultiServerMultiRegion2.cache.xml
--locators=localhost[10334] --server-port=30304
--include-system-classpath
3. *Java code to create ClientRegion and perform region.put()*
private final static String LOCATOR_HOST = "localhost";
private final static int LOCATOR_PORT = 10334;
clientCache = new ClientCacheFactory().addPoolLocator(LOCATOR_HOST,
LOCATOR_PORT).create();
Region region1 = clientCache.
createClientRegionFactory("PROXY").create(REGION1);
assertNotNull(region1);
Region region2 = clientCache.createClientRegionFactory("PROXY").create(REGION2);
assertNotNull(region2);
region1.put("key1", "region1"); // SUCCESSFUL
region2.put("key2", "region2"); // ERROR OCCURRED.
4.* Cache xmls used:*
*Cache-XML- 1*
<?xml version="1.0" encoding="UTF-8"?>
<cache
xmlns="http://schema.pivotal.io/gemfire/cache"
xmlns:gpdb="http://schema.pivotal.io/gemfire/gpdb"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://schema.pivotal.io/gemfire/cache
http://schema.pivotal.io/gemfire/cache/cache-8.1.xsd"
version="8.1">
<pdx read-serialized="true" persistent="false"/>
<region name="SITMultiServerMultiRegion1">
<region-attributes data-policy="partition">
<partition-attributes redundant-copies="1" />
</region>
</cache>
*Cache-XML- 2*
<?xml version="1.0" encoding="UTF-8"?>
<cache
xmlns="http://schema.pivotal.io/gemfire/cache"
xmlns:gpdb="http://schema.pivotal.io/gemfire/gpdb"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://schema.pivotal.io/gemfire/cache
http://schema.pivotal.io/gemfire/cache/cache-8.1.xsd"
version="8.1">
<pdx read-serialized="true" persistent="false"/>
<region name="SITMultiServerMultiRegion2">
<region-attributes data-policy="partition">
<partition-attributes redundant-copies="1" />
</region>
</cache>
5. *StackTrace*:
com.gemstone.gemfire.cache.client.ServerOperationException: remote
server on gpdb(28401:loner):45180:20c75e59: : While performing a
remote put
at
com.gemstone.gemfire.cache.client.internal.PutOp$PutOpImpl.processAck(PutOp.java:445)
at
com.gemstone.gemfire.cache.client.internal.PutOp$PutOpImpl.processResponse(PutOp.java:355)
at
com.gemstone.gemfire.cache.client.internal.PutOp$PutOpImpl.attemptReadResponse(PutOp.java:540)
at
com.gemstone.gemfire.cache.client.internal.AbstractOp.attempt(AbstractOp.java:378)
at
com.gemstone.gemfire.cache.client.internal.ConnectionImpl.execute(ConnectionImpl.java:274)
at
com.gemstone.gemfire.cache.client.internal.pooling.PooledConnection.execute(PooledConnection.java:328)
at
com.gemstone.gemfire.cache.client.internal.OpExecutorImpl.executeWithPossibleReAuthentication(OpExecutorImpl.java:937)
at
com.gemstone.gemfire.cache.client.internal.OpExecutorImpl.execute(OpExecutorImpl.java:155)
at
com.gemstone.gemfire.cache.client.internal.OpExecutorImpl.execute(OpExecutorImpl.java:110)
at
com.gemstone.gemfire.cache.client.internal.PoolImpl.execute(PoolImpl.java:700)
at com.gemstone.gemfire.cache.client.internal.PutOp.execute(PutOp.java:102)
at
com.gemstone.gemfire.cache.client.internal.ServerRegionProxy.put(ServerRegionProxy.java:175)
at
com.gemstone.gemfire.internal.cache.LocalRegion.serverPut(LocalRegion.java:3173)
at
com.gemstone.gemfire.internal.cache.LocalRegion.cacheWriteBeforePut(LocalRegion.java:3300)
at
com.gemstone.gemfire.internal.cache.ProxyRegionMap.basicPut(ProxyRegionMap.java:230)
at
com.gemstone.gemfire.internal.cache.LocalRegion.virtualPut(LocalRegion.java:5955)
at
com.gemstone.gemfire.internal.cache.LocalRegionDataView.putEntry(LocalRegionDataView.java:132)
at
com.gemstone.gemfire.internal.cache.LocalRegion.basicPut(LocalRegion.java:5350)
at
com.gemstone.gemfire.internal.cache.LocalRegion.validatedPut(LocalRegion.java:1668)
at
com.gemstone.gemfire.internal.cache.LocalRegion.put(LocalRegion.java:1655)
at
com.gemstone.gemfire.internal.cache.AbstractRegion.put(AbstractRegion.java:288)
at io.pivotal.gemfire.gpdb.SITSample.testMultiRegion(SITSample.java:104)
Caused by: com.gemstone.gemfire.cache.RegionDestroyedException: Server
connection from
[identity(gpdb(28401:loner):45180:20c75e59,connection=1; port=45180]:
Region named /SITMultiServerMultiRegion2 was not found during put
request
at
com.gemstone.gemfire.internal.cache.tier.sockets.BaseCommand.writeRegionDestroyedEx(BaseCommand.java:642)
at
com.gemstone.gemfire.internal.cache.tier.sockets.command.Put65.cmdExecute(Put65.java:195)
at
com.gemstone.gemfire.internal.cache.tier.sockets.BaseCommand.execute(BaseCommand.java:146)
at
com.gemstone.gemfire.internal.cache.tier.sockets.ServerConnection.doNormalMsg(ServerConnection.java:783)
at
com.gemstone.gemfire.internal.cache.tier.sockets.ServerConnection.doOneMessage(ServerConnection.java:913)
at
com.gemstone.gemfire.internal.cache.tier.sockets.ServerConnection.run(ServerConnection.java:1180)
at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at
com.gemstone.gemfire.internal.cache.tier.sockets.AcceptorImpl$1$1.run(AcceptorImpl.java:555)
at java.lang.Thread.run(Thread.java:745)
Thanks,
Goutam Tadi.
--
Regards,
*Goutam Tadi.*