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

David Capwell commented on CASSANDRA-17549:
-------------------------------------------

[~benedict], patch is ready and finally passing all tests!

bq. file follow-up Jira for the failures it highlights

There are 2 changes in this PR:

1) fix the uncaught logic that the jvm-dtest had (file 
src/java/org/apache/cassandra/concurrent/ExecutionFailure.java)
2) map/flatMap exceptions no longer trigger uncaught handling (file 
src/java/org/apache/cassandra/utils/concurrent/AbstractFuture.java)

For #1, it is what directly is impacted by this JIRA, so should be present in 
this patch.  

For #2 it is a issue detected after fixing #1, before the refactor to Cassandra 
Futures, all map/flatMap (guava transform and jdk thenApply) operations would 
not call org.apache.cassandra.utils.JVMStabilityInspector#uncaughtException or 
org.apache.cassandra.utils.JVMStabilityInspector#inspectThrowable(java.lang.Throwable),
 but would expect the "owner" of the Future to handle the exceptions.  I am 
personally in favor of having inspectThrowable called for each future as it 
monitors exceptions to make sure we handle things in an expected way, but I do 
not feel that uncaughtException is appropriate due to its adding of logging.  
Incremental Repair is a case directly impacted as we hid the following internal 
exception before but now it leaks out (see 
org.apache.cassandra.distributed.test.RepairErrorsTest#testRemoteSyncFailure)

{code}
ERROR 15:32:21 Exception in thread Thread[node1_Repair#1:1,5,Repair#1]
org.apache.cassandra.repair.SomeRepairFailedException: null
{code}

Given that both #1 and #2 were changed in the same patch, I feel it is fitting 
that both are changed in this patch rather than 2 related patches.

> jvm-dtest unhandled exceptions failing the test no longer work
> --------------------------------------------------------------
>
>                 Key: CASSANDRA-17549
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-17549
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Test/dtest/java
>            Reporter: David Capwell
>            Assignee: David Capwell
>            Priority: Normal
>             Fix For: 4.1
>
>
> Seems that ([CASSANDRA-16925] CEP-10 Phase 1: Mockable Task Execution) 
> refactored and avoided using AbstractCluster.uncaughtException, this means 
> that the logic to detect unexpected exceptions to fail tests no longer works.



--
This message was sent by Atlassian Jira
(v8.20.7#820007)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to