From 4519bdfeb0079c43a16100b346b6961c158abdef Mon Sep 17 00:00:00 2001 From: Boaz Leskes Date: Tue, 6 Dec 2016 19:09:21 +0100 Subject: [PATCH] InternalTestCluster shouldn't auto heal an active disruption when a new one is set Instead people should explicitly clear the existing one so it's clear what's going on. --- .../discovery/DiscoveryWithServiceDisruptionsIT.java | 2 +- .../main/java/org/elasticsearch/test/InternalTestCluster.java | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/core/src/test/java/org/elasticsearch/discovery/DiscoveryWithServiceDisruptionsIT.java b/core/src/test/java/org/elasticsearch/discovery/DiscoveryWithServiceDisruptionsIT.java index 99a7f04e74d..9a54419bc5c 100644 --- a/core/src/test/java/org/elasticsearch/discovery/DiscoveryWithServiceDisruptionsIT.java +++ b/core/src/test/java/org/elasticsearch/discovery/DiscoveryWithServiceDisruptionsIT.java @@ -1213,7 +1213,7 @@ public class DiscoveryWithServiceDisruptionsIT extends ESIntegTestCase { for (String node : nodes) { assertNoMaster(node); } - isolateAllNodes.stopDisrupting(); + internalCluster().clearDisruptionScheme(); ensureStableCluster(3); final String preferredMasterName = internalCluster().getMasterName(); final DiscoveryNode preferredMaster = internalCluster().clusterService(preferredMasterName).localNode(); diff --git a/test/framework/src/main/java/org/elasticsearch/test/InternalTestCluster.java b/test/framework/src/main/java/org/elasticsearch/test/InternalTestCluster.java index 2321690bee9..2c89e2924c1 100644 --- a/test/framework/src/main/java/org/elasticsearch/test/InternalTestCluster.java +++ b/test/framework/src/main/java/org/elasticsearch/test/InternalTestCluster.java @@ -1756,7 +1756,8 @@ public final class InternalTestCluster extends TestCluster { public void setDisruptionScheme(ServiceDisruptionScheme scheme) { - clearDisruptionScheme(); + assert activeDisruptionScheme == null : + "there is already and active disruption [" + activeDisruptionScheme + "]. call clearDisruptionScheme first"; scheme.applyToCluster(this); activeDisruptionScheme = scheme; }