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

Xiaojian Zhou commented on GEODE-9747:
--------------------------------------

This is caused by my fix GEODE-9705, where I saved the exceptions which were 
originally ignored in cleanupFailedInitialization(). I only keep the first 
exception and ignore later exceptions. 

cacheIsClosedWhenConflictingPersistentDataExceptionIsThrown() will purposely 
close the cache and cause creating PR failed with CacheClosedException or disk 
recovery exception. 

Before my code changes in GEODE-9705, all these exceptions in 
cleanupFailedInitialization() will be ignored. Then it will go further and fail 
in later steps. 

This time, it failed in 


{code:java}
[vm0] [warn 2021/10/16 04:50:40.769 UTC  <RMI TCP Connection(1)-10.0.0.30> 
tid=0x21] PartitionedRegion#cleanupFailedInitialization(): Failed to clean the 
PartionRegion data store
[vm0] org.apache.geode.distributed.DistributedSystemDisconnectedException: This 
connection to a distributed system has been disconnected.
[vm0]   at 
org.apache.geode.distributed.internal.InternalDistributedSystem.checkConnected(InternalDistributedSystem.java:957)
[vm0]   at 
org.apache.geode.distributed.internal.InternalDistributedSystem.getDistributionManager(InternalDistributedSystem.java:1658)
[vm0]   at 
org.apache.geode.distributed.internal.ReplyProcessor21.getDistributionManager(ReplyProcessor21.java:366)
[vm0]   at 
org.apache.geode.distributed.internal.ReplyProcessor21.postWait(ReplyProcessor21.java:592)
[vm0]   at 
org.apache.geode.distributed.internal.ReplyProcessor21.waitForRepliesUninterruptibly(ReplyProcessor21.java:818)
[vm0]   at 
org.apache.geode.distributed.internal.ReplyProcessor21.waitForRepliesUninterruptibly(ReplyProcessor21.java:773)
[vm0]   at 
org.apache.geode.distributed.internal.ReplyProcessor21.waitForRepliesUninterruptibly(ReplyProcessor21.java:859)
[vm0]   at 
org.apache.geode.internal.cache.PartitionedRegion.attemptToSendDestroyRegionMessage(PartitionedRegion.java:7592)
[vm0]   at 
org.apache.geode.internal.cache.PartitionedRegion.sendDestroyRegionMessage(PartitionedRegion.java:7553)
[vm0]   at 
org.apache.geode.internal.cache.PartitionedRegion.cleanupFailedInitialization(PartitionedRegion.java:5577)
{code}

Depends on timing, most of the time the test will not fail here and it will 
still throw the expected CacheClosedException. But occasionally it will fail 
here, and this exception is not expected by the test. 

I can change the product code to save the last exception instead of the first 
exception to fix the bug. But after thought over, it's better to fix the test 
code and add this expected exception as long as we know what's going on. 


> CI failure: PersistentPartitionedRegionDistributedTest sees wrong kind of 
> exception
> -----------------------------------------------------------------------------------
>
>                 Key: GEODE-9747
>                 URL: https://issues.apache.org/jira/browse/GEODE-9747
>             Project: Geode
>          Issue Type: Bug
>          Components: core, tests
>    Affects Versions: 1.15.0
>            Reporter: Bill Burcham
>            Assignee: Xiaojian Zhou
>            Priority: Major
>              Labels: GeodeOperationAPI, needsTriage, pull-request-available
>
> May be the same issue as GEODE-7030 but it's hard to tell since that other 
> ticket is short on details.
> {noformat}
> PersistentPartitionedRegionDistributedTest > 
> cacheIsClosedWhenConflictingPersistentDataExceptionIsThrown FAILED
>     org.apache.geode.test.dunit.RMIException: While invoking 
> org.apache.geode.internal.cache.partitioned.PersistentPartitionedRegionDistributedTest$$Lambda$331/778323733.run
>  in VM 0 running on Host 
> heavy-lifter-2597c5be-686f-56ce-ab29-4c643f8174ba.c.apachegeode-ci.internal 
> with 4 VMs
>         at org.apache.geode.test.dunit.VM.executeMethodOnObject(VM.java:631)
>         at org.apache.geode.test.dunit.VM.invoke(VM.java:448)
>         at 
> org.apache.geode.internal.cache.partitioned.PersistentPartitionedRegionDistributedTest.cacheIsClosedWhenConflictingPersistentDataExceptionIsThrown(PersistentPartitionedRegionDistributedTest.java:1129)
>         Caused by:
>         org.opentest4j.AssertionFailedError: 
>         Expecting value to be true but was false
>             at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native 
> Method)
>             at 
> sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
>             at 
> sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
>             at 
> org.apache.geode.internal.cache.partitioned.PersistentPartitionedRegionDistributedTest.lambda$cacheIsClosedWhenConflictingPersistentDataExceptionIsThrown$bb17a952$4(PersistentPartitionedRegionDistributedTest.java:1136)
> {noformat}



--
This message was sent by Atlassian Jira
(v8.20.1#820001)

Reply via email to