This is an automated email from the ASF dual-hosted git repository.
samt pushed a commit to branch trunk
in repository https://gitbox.apache.org/repos/asf/cassandra.git
The following commit(s) were added to refs/heads/trunk by this push:
new c6fc671 Fix racey assertions in ActiveRepairServiceTest
c6fc671 is described below
commit c6fc6714eea73d94e6befd13b52a15cd48e28f7a
Author: Sam Tunnicliffe <[email protected]>
AuthorDate: Thu Sep 3 11:54:06 2020 +0100
Fix racey assertions in ActiveRepairServiceTest
Patch by Sam Tunnicliffe; reviewed by Ekaterina Dimitrova
for CASSANDRA-16034
---
.../org/apache/cassandra/service/ActiveRepairServiceTest.java | 8 ++++++--
1 file changed, 6 insertions(+), 2 deletions(-)
diff --git
a/test/unit/org/apache/cassandra/service/ActiveRepairServiceTest.java
b/test/unit/org/apache/cassandra/service/ActiveRepairServiceTest.java
index 45e55c3..d0a367a 100644
--- a/test/unit/org/apache/cassandra/service/ActiveRepairServiceTest.java
+++ b/test/unit/org/apache/cassandra/service/ActiveRepairServiceTest.java
@@ -37,6 +37,7 @@ import org.junit.BeforeClass;
import org.junit.Test;
import org.apache.cassandra.SchemaLoader;
+import org.apache.cassandra.Util;
import org.apache.cassandra.concurrent.DebuggableThreadPoolExecutor;
import org.apache.cassandra.config.Config;
import org.apache.cassandra.config.DatabaseDescriptor;
@@ -426,9 +427,12 @@ public class ActiveRepairServiceTest
// Make sure all tasks have been submitted to the validation
executor
allSubmitted.await(10, TimeUnit.SECONDS);
- // 2 threads actively processing tasks
+ // Give the tasks we expect to execute immediately chance to be
scheduled
+ Util.spinAssertEquals(2 , ((DebuggableThreadPoolExecutor)
validationExecutor)::getActiveTaskCount, 1);
+ Util.spinAssertEquals(3 , ((DebuggableThreadPoolExecutor)
validationExecutor)::getPendingTaskCount, 1);
+
+ // verify that we've reached a steady state with 2 threads
actively processing and 3 queued tasks
Assert.assertEquals(2, ((DebuggableThreadPoolExecutor)
validationExecutor).getActiveTaskCount());
- // 3 tasks queued
Assert.assertEquals(3, ((DebuggableThreadPoolExecutor)
validationExecutor).getPendingTaskCount());
// allow executing tests to complete
blocked.signalAll();
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]