[ 
https://issues.apache.org/jira/browse/GEODE-8442?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17332535#comment-17332535
 ] 

ASF subversion and git services commented on GEODE-8442:
--------------------------------------------------------

Commit 0f40b8d8b5d530c5f650593526c01c0185d5efba in geode-native's branch 
refs/heads/develop from Mario Kevo
[ https://gitbox.apache.org/repos/asf?p=geode-native.git;h=0f40b8d ]

 GEODE-8442: Exception in server not identified correctly in client (#713)

* Exception in server not identified correctly in client

> Exception in server not identified correctly in client
> ------------------------------------------------------
>
>                 Key: GEODE-8442
>                 URL: https://issues.apache.org/jira/browse/GEODE-8442
>             Project: Geode
>          Issue Type: Bug
>          Components: native client
>            Reporter: Alberto Bustamante Reyes
>            Assignee: Mario Kevo
>            Priority: Major
>              Labels: needs-review, pull-request-available
>
> Native client is not identifying correctly an exception returned by the 
> server.
> This is a log from an exception properly identified (I have introduced "????" 
> where I think I have to hide sensitive information):
> {code}
> [error 2020/07/22 09:17:10.831337 UTC ????] 
> CacheTransactionManager::failover: An exception 
> (org.apache.geode.cache.TransactionDataNodeHasDepartedException: Could not 
> find transaction host for TXId: 
> ????(default_GeodeDS:1:loner):3:Native_gdbdedfebe1:default_GeodeDS:6022
>       at 
> org.apache.geode.internal.cache.tier.sockets.command.TXFailoverCommand.cmdExecute(TXFailoverCommand.java:126)
>       at 
> org.apache.geode.internal.cache.tier.sockets.BaseCommand.execute(BaseCommand.java:177)
>       at 
> org.apache.geode.internal.cache.tier.sockets.ServerConnection.doNormalMessage(ServerConnection.java:848)
>       at 
> org.apache.geode.internal.cache.tier.sockets.OriginalServerConnection.doOneMessage(OriginalServerConnection.java:72)
>       at 
> org.apache.geode.internal.cache.tier.sockets.ServerConnection.run(ServerConnection.java:1212)
>       at 
> java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
>       at 
> java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
>       at 
> org.apache.geode.internal.cache.tier.sockets.AcceptorImpl.lambda$initializeServerConnectionThreadPool$3(AcceptorImpl.java:676)
>       at 
> org.apache.geode.logging.internal.executors.LoggingThreadFactory.lambda$newThread$0(LoggingThreadFactory.java:119)
>       at java.base/java.lang.Thread.run(Thread.java:834)
> ) happened at remote server.
> data-access: write_element:[TransactionDataNodeHasDepartedException] 
> ????.get(????)::apache::geode::client::TransactionDataNodeHasDepartedException:org.apache.geode.cache.TransactionDataNodeHasDepartedException:
>  Could not find transaction host for TXId: 
> ????(default_GeodeDS:1:loner):3:Native_gdbdedfebe1:default_GeodeDS:6022
> {code}
> But in this case, although the exception received is also a 
> TransactionDataNodeHasDepartedException, it is "translated" to an Unknown 
> exception:
> {code}
> [error 2020/07/22 09:17:10.979506 UTC ????] Region::containsKeyOnServer:: An 
> exception (org.apache.geode.cache.TransactionDataNodeHasDepartedException: 
> Transaction data node 192.168.240.13(dms-server-1:1)<v1>:41000 has departed. 
> To proceed, rollback this transaction and begin a new one., caused by 
> org.apache.geode.internal.cache.ForceReattemptException: PartitionResponse 
> got remote CacheClosedException
>       at 
> org.apache.geode.internal.cache.tx.PartitionedTXRegionStub.containsKey(PartitionedTXRegionStub.java:247)
>       at 
> org.apache.geode.internal.cache.TXStateStub.containsKey(TXStateStub.java:431)
>       at 
> org.apache.geode.internal.cache.TXStateProxyImpl.containsKey(TXStateProxyImpl.java:530)
>       at 
> org.apache.geode.internal.cache.PartitionedRegion.containsKey(PartitionedRegion.java:6402)
>       at 
> org.apache.geode.internal.cache.tier.sockets.command.ContainsKey66.cmdExecute(ContainsKey66.java:138)
>       at 
> org.apache.geode.internal.cache.tier.sockets.BaseCommand.execute(BaseCommand.java:177)
>       at 
> org.apache.geode.internal.cache.tier.sockets.ServerConnection.doNormalMessage(ServerConnection.java:848)
>       at 
> org.apache.geode.internal.cache.tier.sockets.OriginalServerConnection.doOneMessage(OriginalServerConnection.java:72)
>       at 
> org.apache.geode.internal.cache.tier.sockets.ServerConnection.run(ServerConnection.java:1212)
>       at 
> java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
>       at 
> java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
>       at 
> org.apache.geode.internal.cache.tier.sockets.AcceptorImpl.lambda$initializeServerConnectionThreadPool$3(AcceptorImpl.java:676)
>       at 
> org.apache.geode.logging.internal.executors.LoggingThreadFactory.lambda$newThread$0(LoggingThreadFactory.java:119)
>       at java.base/java.lang.Thread.run(Thread.java:834)
> Caused by: org.apache.geode.internal.cache.ForceReattemptException: 
> PartitionResponse got remote CacheClosedException
>       at 
> org.apache.geode.internal.cache.partitioned.PartitionMessage$PartitionResponse.waitForCacheException(PartitionMessage.java:837)
>       at 
> org.apache.geode.internal.cache.partitioned.ContainsKeyValueMessage$ContainsKeyValueResponse.waitForContainsResult(ContainsKeyValueMessage.java:295)
>       at 
> org.apache.geode.internal.cache.PartitionedRegion.containsKeyRemotely(PartitionedRegion.java:6558)
>       at 
> org.apache.geode.internal.cache.tx.PartitionedTXRegionStub.containsKey(PartitionedTXRegionStub.java:231)
>       ... 13 more
> Caused by: org.apache.geode.cache.CacheClosedException: Remote cache is 
> closed: 192.168.240.13(dms-server-1:1)<v1>:41000
>       at 
> org.apache.geode.internal.cache.GemFireCacheImpl.getCacheClosedException(GemFireCacheImpl.java:1630)
>       at 
> org.apache.geode.internal.cache.GemFireCacheImpl.getCacheClosedException(GemFireCacheImpl.java:1619)
>       at 
> org.apache.geode.internal.cache.partitioned.PartitionMessage.process(PartitionMessage.java:307)
>       at 
> org.apache.geode.distributed.internal.DistributionMessage.scheduleAction(DistributionMessage.java:376)
>       at 
> org.apache.geode.distributed.internal.DistributionMessage$1.run(DistributionMessage.java:440)
>       at 
> java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
>       at 
> java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
>       at 
> org.apache.geode.distributed.internal.ClusterOperationExecutors.runUntilShutdown(ClusterOperationExecutors.java:442)
>       at 
> org.apache.geode.distributed.internal.ClusterOperationExecutors.doPartitionRegionThread(ClusterOperationExecutors.java:422)
>       ... 2 more
> ) happened at remote server.
> [info 2020/07/22 09:17:10.979514 UTC ????] error code: 12
> [fine 2020/07/22 09:17:10.979869 UTC ????] sendSyncRequest:: retry = 0
> [fine 2020/07/22 09:17:10.979874 UTC ????] sendRequestConnWithRetry:: 
> maxSendRetries = 1 
> data-access: write_element:[Exception] 
> SmSessions.containsKeyOnServer(????):apache::geode::client::UnknownException:Replay
>  is unsupported: 
> org.apache.geode.cache.TransactionDataNodeHasDepartedException: Transaction 
> data node 192.168.240.13(????)<v1>:41000 has departed. To proceed, rollback 
> this transaction and begin a new one, caused by 
> org.apache.geode.internal.cache.ForceReattemptException: PartitionResponse 
> got remote CacheClosedException
> {code}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to