test: Index more docs, so that it is less likely the search request

does not time out.

Closes #29221
This commit is contained in:
Martijn van Groningen 2018-04-12 11:41:41 +02:00
parent 067fbb8ecd
commit fac009630d
No known key found for this signature in database
GPG Key ID: AB236F4FCF2AF12A
1 changed files with 9 additions and 9 deletions

View File

@ -21,15 +21,12 @@ package org.elasticsearch.search;
import org.elasticsearch.ElasticsearchException;
import org.elasticsearch.action.search.SearchResponse;
import org.elasticsearch.action.search.SearchType;
import org.elasticsearch.common.settings.Settings;
import org.elasticsearch.common.unit.TimeValue;
import org.elasticsearch.plugins.Plugin;
import org.elasticsearch.script.MockScriptPlugin;
import org.elasticsearch.script.Script;
import org.elasticsearch.script.ScriptType;
import org.elasticsearch.search.aggregations.AggregatorFactories;
import org.elasticsearch.search.query.QueryPhaseExecutionException;
import org.elasticsearch.test.ESIntegTestCase;
import java.util.Collection;
@ -57,7 +54,10 @@ public class SearchTimeoutIT extends ESIntegTestCase {
}
public void testSimpleTimeout() throws Exception {
client().prepareIndex("test", "type", "1").setSource("field", "value").setRefreshPolicy(IMMEDIATE).get();
for (int i = 0; i < 32; i++) {
client().prepareIndex("test", "type", Integer.toString(i)).setSource("field", "value").get();
}
refresh("test");
SearchResponse searchResponse = client().prepareSearch("test").setTimeout(new TimeValue(10, TimeUnit.MILLISECONDS))
.setQuery(scriptQuery(
@ -66,19 +66,19 @@ public class SearchTimeoutIT extends ESIntegTestCase {
.execute().actionGet();
assertThat(searchResponse.isTimedOut(), equalTo(true));
}
public void testPartialResultsIntolerantTimeout() throws Exception {
client().prepareIndex("test", "type", "1").setSource("field", "value").setRefreshPolicy(IMMEDIATE).get();
ElasticsearchException ex = expectThrows(ElasticsearchException.class, () ->
ElasticsearchException ex = expectThrows(ElasticsearchException.class, () ->
client().prepareSearch("test").setTimeout(new TimeValue(10, TimeUnit.MILLISECONDS))
.setQuery(scriptQuery(
new Script(ScriptType.INLINE, "mockscript", SCRIPT_NAME, Collections.emptyMap())))
.setAllowPartialSearchResults(false) // this line causes timeouts to report failures
.execute().actionGet()
.execute().actionGet()
);
assertTrue(ex.toString().contains("Time exceeded"));
}
}
public static class ScriptedTimeoutPlugin extends MockScriptPlugin {
static final String SCRIPT_NAME = "search_timeout";