[TEST] Ensure no bechmarks are running after test
This commit is contained in:
parent
240a2a8abf
commit
65d27bff9d
|
@ -20,7 +20,6 @@ package org.elasticsearch.action.bench;
|
||||||
|
|
||||||
import com.google.common.base.Predicate;
|
import com.google.common.base.Predicate;
|
||||||
import org.apache.lucene.util.English;
|
import org.apache.lucene.util.English;
|
||||||
import org.apache.lucene.util.LuceneTestCase.AwaitsFix;
|
|
||||||
import org.elasticsearch.action.ActionFuture;
|
import org.elasticsearch.action.ActionFuture;
|
||||||
import org.elasticsearch.action.index.IndexRequestBuilder;
|
import org.elasticsearch.action.index.IndexRequestBuilder;
|
||||||
import org.elasticsearch.common.Strings;
|
import org.elasticsearch.common.Strings;
|
||||||
|
@ -108,7 +107,7 @@ public class BenchmarkIntegrationTest extends ElasticsearchIntegrationTest {
|
||||||
logger.info("--> Submitting benchmark - competitors [{}] iterations [{}]", request.competitors().size(),
|
logger.info("--> Submitting benchmark - competitors [{}] iterations [{}]", request.competitors().size(),
|
||||||
request.settings().iterations());
|
request.settings().iterations());
|
||||||
|
|
||||||
client().bench(request);
|
final ActionFuture<BenchmarkResponse> future = client().bench(request);
|
||||||
|
|
||||||
final boolean ret = awaitBusy(statusPredicate, TIMEOUT, TIME_UNIT);
|
final boolean ret = awaitBusy(statusPredicate, TIMEOUT, TIME_UNIT);
|
||||||
assertTrue(ret);
|
assertTrue(ret);
|
||||||
|
@ -127,6 +126,12 @@ public class BenchmarkIntegrationTest extends ElasticsearchIntegrationTest {
|
||||||
validateCompetitionResult(result, competitionSettingsMap.get(result.competitionName()), false);
|
validateCompetitionResult(result, competitionSettingsMap.get(result.competitionName()), false);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
client().prepareAbortBench(BENCHMARK_NAME).get();
|
||||||
|
// Confirm that there are no active benchmarks in the cluster
|
||||||
|
assertThat(client().prepareBenchStatus().execute().actionGet().totalActiveBenchmarks(), equalTo(0));
|
||||||
|
|
||||||
|
// Confirm that benchmark was indeed aborted
|
||||||
|
assertThat(future.get().state(), isOneOf(BenchmarkResponse.State.ABORTED, BenchmarkResponse.State.COMPLETE));
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
|
@ -161,7 +166,7 @@ public class BenchmarkIntegrationTest extends ElasticsearchIntegrationTest {
|
||||||
assertThat(statusResponse.totalActiveBenchmarks(), equalTo(0));
|
assertThat(statusResponse.totalActiveBenchmarks(), equalTo(0));
|
||||||
|
|
||||||
// Confirm that benchmark was indeed aborted
|
// Confirm that benchmark was indeed aborted
|
||||||
assertThat(benchmarkResponse.get().state(), equalTo(BenchmarkResponse.State.ABORTED));
|
assertThat(benchmarkResponse.get().state(),isOneOf(BenchmarkResponse.State.ABORTED, BenchmarkResponse.State.COMPLETE));
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test(expected = BenchmarkMissingException.class)
|
@Test(expected = BenchmarkMissingException.class)
|
||||||
|
|
|
@ -42,7 +42,7 @@ public class BenchmarkTestUtil {
|
||||||
public static final int MAX_MULTIPLIER = 500;
|
public static final int MAX_MULTIPLIER = 500;
|
||||||
public static final int MIN_SMALL_INTERVAL = 1;
|
public static final int MIN_SMALL_INTERVAL = 1;
|
||||||
public static final int MAX_SMALL_INTERVAL = 3;
|
public static final int MAX_SMALL_INTERVAL = 3;
|
||||||
public static final int MIN_LARGE_INTERVAL = 5;
|
public static final int MIN_LARGE_INTERVAL = 1;
|
||||||
public static final int MAX_LARGE_INTERVAL = 7;
|
public static final int MAX_LARGE_INTERVAL = 7;
|
||||||
|
|
||||||
public static final String BENCHMARK_NAME = "test_benchmark";
|
public static final String BENCHMARK_NAME = "test_benchmark";
|
||||||
|
|
|
@ -24,6 +24,8 @@ import org.elasticsearch.ElasticsearchIllegalArgumentException;
|
||||||
import org.elasticsearch.action.admin.cluster.node.stats.NodeStats;
|
import org.elasticsearch.action.admin.cluster.node.stats.NodeStats;
|
||||||
import org.elasticsearch.action.admin.cluster.node.stats.NodesStatsResponse;
|
import org.elasticsearch.action.admin.cluster.node.stats.NodesStatsResponse;
|
||||||
import org.elasticsearch.action.admin.cluster.state.ClusterStateResponse;
|
import org.elasticsearch.action.admin.cluster.state.ClusterStateResponse;
|
||||||
|
import org.elasticsearch.action.bench.BenchmarkNodeMissingException;
|
||||||
|
import org.elasticsearch.action.bench.BenchmarkStatusResponse;
|
||||||
import org.elasticsearch.client.Client;
|
import org.elasticsearch.client.Client;
|
||||||
import org.elasticsearch.cluster.metadata.IndexMetaData;
|
import org.elasticsearch.cluster.metadata.IndexMetaData;
|
||||||
import org.elasticsearch.common.logging.ESLogger;
|
import org.elasticsearch.common.logging.ESLogger;
|
||||||
|
@ -32,12 +34,13 @@ import org.elasticsearch.indices.IndexMissingException;
|
||||||
import org.elasticsearch.indices.IndexTemplateMissingException;
|
import org.elasticsearch.indices.IndexTemplateMissingException;
|
||||||
import org.elasticsearch.repositories.RepositoryMissingException;
|
import org.elasticsearch.repositories.RepositoryMissingException;
|
||||||
|
|
||||||
|
|
||||||
import java.net.InetSocketAddress;
|
import java.net.InetSocketAddress;
|
||||||
import java.util.Random;
|
import java.util.Random;
|
||||||
|
|
||||||
import static org.elasticsearch.test.hamcrest.ElasticsearchAssertions.*;
|
import static org.elasticsearch.test.hamcrest.ElasticsearchAssertions.*;
|
||||||
|
import static org.hamcrest.Matchers.empty;
|
||||||
import static org.hamcrest.Matchers.equalTo;
|
import static org.hamcrest.Matchers.equalTo;
|
||||||
|
import static org.hamcrest.Matchers.is;
|
||||||
import static org.junit.Assert.assertThat;
|
import static org.junit.Assert.assertThat;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -78,6 +81,12 @@ public abstract class ImmutableTestCluster implements Iterable<Client> {
|
||||||
assertAllSearchersClosed();
|
assertAllSearchersClosed();
|
||||||
assertAllFilesClosed();
|
assertAllFilesClosed();
|
||||||
ensureEstimatedStats();
|
ensureEstimatedStats();
|
||||||
|
try {
|
||||||
|
final BenchmarkStatusResponse statusResponse = client().prepareBenchStatus().execute().actionGet();
|
||||||
|
assertThat(statusResponse.benchmarkResponses(), is(empty()));
|
||||||
|
} catch (BenchmarkNodeMissingException ex) {
|
||||||
|
// that's fine
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
Loading…
Reference in New Issue