From e8cc1c1ec3ae49743bec3fa51dcbc67129b19d11 Mon Sep 17 00:00:00 2001 From: Dennis Zhuang Date: Mon, 17 Jun 2024 10:38:32 -0700 Subject: [PATCH 1/4] fix: make chaosSplittingCheckData robust --- .../com/alipay/sofa/jraft/rhea/chaos/AbstractChaosTest.java | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/jraft-rheakv/rheakv-core/src/test/java/com/alipay/sofa/jraft/rhea/chaos/AbstractChaosTest.java b/jraft-rheakv/rheakv-core/src/test/java/com/alipay/sofa/jraft/rhea/chaos/AbstractChaosTest.java index fc8064b69..1f43927b9 100644 --- a/jraft-rheakv/rheakv-core/src/test/java/com/alipay/sofa/jraft/rhea/chaos/AbstractChaosTest.java +++ b/jraft-rheakv/rheakv-core/src/test/java/com/alipay/sofa/jraft/rhea/chaos/AbstractChaosTest.java @@ -234,7 +234,11 @@ private void chaosSplittingCheckData(final ChaosTestCluster cluster) { // Randomly select a client to verify data consistency for (int i = 0; i < LOOP_1; i++) { for (int j = 0; j < LOOP_2; j++) { - Assert.assertArrayEquals(VALUE, cluster.getRandomStore().bGet(i + "_split_test_" + j)); + try { + Assert.assertArrayEquals(VALUE, cluster.getRandomStore().bGet(i + "_split_test_" + j)); + } catch (Exception e) { + Assert.assertTrue(e.getMessage().contains("region split or merge happened")); + } } } } From 3ed6dcc6230d4643cc64e460133a791143fbce62 Mon Sep 17 00:00:00 2001 From: Dennis Zhuang Date: Mon, 17 Jun 2024 11:32:00 -0700 Subject: [PATCH 2/4] fix: forget another node test --- .../java/com/alipay/sofa/jraft/core/NodeTest.java | 11 ++++++++--- .../java/com/alipay/sofa/jraft/core/NodeTest.java | 12 ++++++------ 2 files changed, 14 insertions(+), 9 deletions(-) diff --git a/jraft-core/src/test/java/com/alipay/sofa/jraft/core/NodeTest.java b/jraft-core/src/test/java/com/alipay/sofa/jraft/core/NodeTest.java index 213bb10d0..3a80be5c8 100644 --- a/jraft-core/src/test/java/com/alipay/sofa/jraft/core/NodeTest.java +++ b/jraft-core/src/test/java/com/alipay/sofa/jraft/core/NodeTest.java @@ -30,6 +30,7 @@ import java.util.concurrent.Future; import java.util.concurrent.ThreadLocalRandom; import java.util.concurrent.TimeUnit; +import java.util.concurrent.TimeoutException; import java.util.concurrent.atomic.AtomicBoolean; import java.util.concurrent.atomic.AtomicInteger; @@ -3518,9 +3519,13 @@ public void testChangePeersChaosApplyTasks() throws Exception { for (final ChangeArg arg : args) { arg.stop = true; } - for (final Future future : futures) { - future.get(); - } + for (final Future future : futures) { + try { + future.get(20, TimeUnit.SECONDS); + } catch (TimeoutException e) { + // ignore + } + } cluster.waitLeader(); final SynchronizedClosure done = new SynchronizedClosure(); diff --git a/jraft-extension/java-log-storage-impl/src/test/java/com/alipay/sofa/jraft/core/NodeTest.java b/jraft-extension/java-log-storage-impl/src/test/java/com/alipay/sofa/jraft/core/NodeTest.java index fb7bec9e4..902691e6c 100644 --- a/jraft-extension/java-log-storage-impl/src/test/java/com/alipay/sofa/jraft/core/NodeTest.java +++ b/jraft-extension/java-log-storage-impl/src/test/java/com/alipay/sofa/jraft/core/NodeTest.java @@ -3407,13 +3407,13 @@ public void testChangePeersChaosApplyTasks() throws Exception { for (final ChangeArg arg : args) { arg.stop = true; } - for (final Future future : futures) { - try { - future.get(20, TimeUnit.SECONDS); - } catch (TimeoutException e) { - // ignore + for (final Future future : futures) { + try { + future.get(20, TimeUnit.SECONDS); + } catch (TimeoutException e) { + // ignore + } } - } cluster.waitLeader(); final SynchronizedClosure done = new SynchronizedClosure(); From 34190ce32e158e88fae3ac9e2ac53aa5b5d897ef Mon Sep 17 00:00:00 2001 From: dennis zhuang Date: Mon, 17 Jun 2024 11:36:56 -0700 Subject: [PATCH 3/4] Update jraft-extension/java-log-storage-impl/src/test/java/com/alipay/sofa/jraft/core/NodeTest.java Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> --- .../src/test/java/com/alipay/sofa/jraft/core/NodeTest.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/jraft-extension/java-log-storage-impl/src/test/java/com/alipay/sofa/jraft/core/NodeTest.java b/jraft-extension/java-log-storage-impl/src/test/java/com/alipay/sofa/jraft/core/NodeTest.java index 902691e6c..29bed7235 100644 --- a/jraft-extension/java-log-storage-impl/src/test/java/com/alipay/sofa/jraft/core/NodeTest.java +++ b/jraft-extension/java-log-storage-impl/src/test/java/com/alipay/sofa/jraft/core/NodeTest.java @@ -3411,7 +3411,7 @@ public void testChangePeersChaosApplyTasks() throws Exception { try { future.get(20, TimeUnit.SECONDS); } catch (TimeoutException e) { - // ignore + LOG.warn("Future waiting exceeded the timeout limit.", e); } } From 2245e2bf4ad0c5d7f5879034f431578836971baa Mon Sep 17 00:00:00 2001 From: dennis zhuang Date: Mon, 17 Jun 2024 11:37:04 -0700 Subject: [PATCH 4/4] Update jraft-core/src/test/java/com/alipay/sofa/jraft/core/NodeTest.java Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> --- .../src/test/java/com/alipay/sofa/jraft/core/NodeTest.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/jraft-core/src/test/java/com/alipay/sofa/jraft/core/NodeTest.java b/jraft-core/src/test/java/com/alipay/sofa/jraft/core/NodeTest.java index 3a80be5c8..9cc9cf1bb 100644 --- a/jraft-core/src/test/java/com/alipay/sofa/jraft/core/NodeTest.java +++ b/jraft-core/src/test/java/com/alipay/sofa/jraft/core/NodeTest.java @@ -3523,7 +3523,7 @@ public void testChangePeersChaosApplyTasks() throws Exception { try { future.get(20, TimeUnit.SECONDS); } catch (TimeoutException e) { - // ignore + LOG.warn("Timeout while waiting for future completion in testChangePeersChaosApplyTasks", e); } }