dcapwell commented on code in PR #3828:
URL: https://github.com/apache/cassandra/pull/3828#discussion_r1929058024
##########
test/distributed/org/apache/cassandra/distributed/test/FailingRepairTest.java:
##########
@@ -150,6 +150,8 @@ public static void setupCluster() throws IOException
if (throwable.getClass().toString().contains("InstanceShutdown")
|| // can't check instanceof as it is thrown by a different classloader
throwable.getMessage() != null &&
throwable.getMessage().contains("Parent repair session with id"))
return true;
+ if (throwable.getMessage().contains("Corrupted: Corrupted"))
Review Comment:
I found the root cause. CASSANDRA-20069 removed the error handling that
this test depends on, so we need to revert that to get the test passing, not
telling the test to ignore this exception.
jvm-dtest should do
```
# org.apache.cassandra.distributed.impl.AbstractCluster#uncaughtExceptions
InstanceClassLoader cl = (InstanceClassLoader)
thread.getContextClassLoader();
get(cl.getInstanceId()).uncaughtException(thread, error);
```
this causes us to hit our failure detection logic, which leads to C* to halt
the JVM due to stability issues (what this test is testing). Without that
logic `org.apache.cassandra.distributed.impl.InstanceKiller$InstanceShutdown`
doesn't get thrown and this test fails (because we stopped handling the
exception that this test is trying to make sure we do)
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]