Hello Rajesh, *>> Do you think this might have caused the problem? if yes was it due to the client trying to connect to a node where the region is not present?* Yes, that's certainly the cause of the problem: you will hit the exception every time the client tries to execute the operation on one of the servers that doesn't have the region created.
The region is *REPLICATE* so the client pool "assumes" that it will be created in every single server, if you want a *REPLICATE* region to exist only in some servers you need to user server groups. The exception is certainly misleading, though, it shouldn't contain the name twice and it would probably be better to throw something like *RegionNotFoundException* instead of *RegionDestroyedException*, but that's another discussion. Cheers. On Wed, Dec 4, 2019 at 10:32 AM Rajesh Kumar <rajeshkumar.ii...@gmail.com> wrote: > Hi Ju, > > I have checked the logs and I can see that out of the 5 nodes in the > cluster, the region is created only in 2 nodes and in rest of the nodes > region creation failed due to various reasons. Do you think this might > have caused the problem? if yes was it due to the client trying to connect > to a node where the region is not present? > > Thanks, > Rajesh > > On Wed, Dec 4, 2019 at 3:41 PM Ju@N <jujora...@gmail.com> wrote: > >> Hello Rajesh, >> >> I've seen this issue 4 or 5 times in the past and, even though the >> Exception is misleading, I certainly remember that the root cause of the >> issue was always the same: the client application was trying to execute the >> operation on a server that didn't have the region created. As Dan pointed >> out, I'd suggest to double check whether you have the region >> *AuthIdRegion* configured in all your servers. >> Best regards. >> >> >> On Wed, Dec 4, 2019 at 9:40 AM Rajesh Kumar <rajeshkumar.ii...@gmail.com> >> wrote: >> >>> Hi Udo, >>> >>> Thanks for the reply. One of our clients is facing this issue in >>> older version of our product where we use apache geode 1.1.0. We have >>> upgraded to 1.8.0 in our latest release. >>> The region /AuthIdRegion is created by using java code, verified it >>> by querying it using gfsh. >>> we will take a look at the spring boot for out further releases but >>> can you suggest me a fix/solution for the problem. >>> >>> Thanks, >>> Rajesh >>> >>> >>> On Wed, Dec 4, 2019 at 12:00 AM Udo Kohlmeyer <u...@apache.com> wrote: >>> >>>> Reporting this, since it seems it did not make it through last night. >>>> On 12/3/19 12:04 AM, Udo Kohlmeyer wrote: >>>> >>>> Hi there Rajesh, >>>> >>>> Thank you for raising this. I have seen this before and I think it has >>>> been tracked to it actually being a toString() issue when logging the >>>> exception and not that it is not finding the region. >>>> >>>> Just for interest sake, why are you using Geode 1.1.0? Did you know >>>> Geode 1.10 is already out and we are in the process of cutting 1.11. >>>> >>>> In addition, can you confirm that you have created a region of the same >>>> name on the server side? >>>> >>>> If not, please create it either in Java code (pretty much the same as >>>> what you are doing with the client region) OR using GFSH, connected to the >>>> cluster to create it. >>>> >>>> If you'd like, have a look at Spring Boot for Geode >>>> <https://github.com/spring-projects/spring-boot-data-geode>. I'd >>>> recommend it.. you won't be disappointed. It will simplify the way you code >>>> and interact with the Geode system. >>>> >>>> --Udo >>>> On 12/2/19 8:04 PM, Rajesh Kumar wrote: >>>> >>>> we are using apache geode 1.1.0 version. sometimes randomly while >>>> trying to get details from a region we are getting exceptions. On looking >>>> at the logs it seems the region is appended to itself and a region not >>>> found exception is thrown. >>>> >>>> >>>> >>>> Caused by: org.apache.geode.cache.RegionDestroyedException: Server >>>> connection from >>>> [identity(10.43.164.241(10772:loner):62563:aebd35c5,connection=1; >>>> port=62563]: Region named /AuthIdRegion/AuthIdRegion was not found during >>>> get request >>>> >>>> at >>>> org.apache.geode.internal.cache.tier.sockets.BaseCommand.writeRegionDestroyedEx(BaseCommand.java:633) >>>> >>>> at >>>> org.apache.geode.internal.cache.tier.sockets.command.Get70.cmdExecute(Get70.java:126) >>>> >>>> at >>>> org.apache.geode.internal.cache.tier.sockets.BaseCommand.execute(BaseCommand.java:141) >>>> >>>> at >>>> org.apache.geode.internal.cache.tier.sockets.ServerConnection.doNormalMsg(ServerConnection.java:783) >>>> >>>> at >>>> org.apache.geode.internal.cache.tier.sockets.ServerConnection.doOneMessage(ServerConnection.java:914) >>>> >>>> at >>>> org.apache.geode.internal.cache.tier.sockets.ServerConnection.run(ServerConnection.java:1171) >>>> >>>> at >>>> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) >>>> >>>> at >>>> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) >>>> >>>> at >>>> org.apache.geode.internal.cache.tier.sockets.AcceptorImpl$1$1.run(AcceptorImpl.java:519) >>>> >>>> ... 1 more >>>> >>>> >>>> >>>> >>>> >>>> The name of my region is /AuthIdRegion but it tries to query using >>>> "/AuthIdRegion/AuthIdRegion" >>>> >>>> >>>> >>>> we use client region factory to create a region instance >>>> >>>> "authIdCacheRegionInstance = GeodeCache.getCacheInstance( >>>> ).createClientRegionFactory(ClientRegionShortcut.PROXY).create("AuthIdRegion");" >>>> >>>> >>>> >>>> It will be really helpful if someone can point what exactly is the >>>> issue. >>>> >>>> >>>> >>>> Thanks, >>>> >>>> Rajesh >>>> >>>> >> >> -- >> Ju@N >> > -- Ju@N