Here are the examples of the java api class org.elasticsearch.action.search.SearchType taken from open source projects.
1. SearchScrollIT#testDeepScrollingDoesNotBlowUp()
Project: elasticsearch
File: SearchScrollIT.java
File: SearchScrollIT.java
public void testDeepScrollingDoesNotBlowUp() throws Exception { client().prepareIndex("index", "type", "1").setSource("field", "value").setRefreshPolicy(IMMEDIATE).execute().get(); for (SearchType searchType : SearchType.values()) { SearchRequestBuilder builder = client().prepareSearch("index").setSearchType(searchType).setQuery(QueryBuilders.matchAllQuery()).setSize(Integer.MAX_VALUE).setScroll("1m"); SearchResponse response = builder.execute().actionGet(); try { ElasticsearchAssertions.assertHitCount(response, 1L); } finally { String scrollId = response.getScrollId(); if (scrollId != null) { clearScroll(scrollId); } } } }
2. ChildQuerySearchIT#testSimpleQueryRewrite()
Project: elasticsearch
File: ChildQuerySearchIT.java
File: ChildQuerySearchIT.java
public void testSimpleQueryRewrite() throws Exception { assertAcked(prepareCreate("test").addMapping("parent", "p_field", "type=keyword").addMapping("child", "_parent", "type=parent", "c_field", "type=keyword")); ensureGreen(); // index simple data int childId = 0; for (int i = 0; i < 10; i++) { String parentId = String.format(Locale.ROOT, "p%03d", i); client().prepareIndex("test", "parent", parentId).setSource("p_field", parentId).get(); int j = childId; for (; j < childId + 50; j++) { String childUid = String.format(Locale.ROOT, "c%03d", j); client().prepareIndex("test", "child", childUid).setSource("c_field", childUid).setParent(parentId).get(); } childId = j; } refresh(); SearchType[] searchTypes = new SearchType[] { SearchType.QUERY_THEN_FETCH, SearchType.DFS_QUERY_THEN_FETCH }; for (SearchType searchType : searchTypes) { SearchResponse searchResponse = client().prepareSearch("test").setSearchType(searchType).setQuery(hasChildQuery("child", prefixQuery("c_field", "c"), ScoreMode.Max)).addSort("p_field", SortOrder.ASC).setSize(5).get(); assertNoFailures(searchResponse); assertThat(searchResponse.getHits().totalHits(), equalTo(10L)); assertThat(searchResponse.getHits().hits()[0].id(), equalTo("p000")); assertThat(searchResponse.getHits().hits()[1].id(), equalTo("p001")); assertThat(searchResponse.getHits().hits()[2].id(), equalTo("p002")); assertThat(searchResponse.getHits().hits()[3].id(), equalTo("p003")); assertThat(searchResponse.getHits().hits()[4].id(), equalTo("p004")); searchResponse = client().prepareSearch("test").setSearchType(searchType).setQuery(hasParentQuery("parent", prefixQuery("p_field", "p"), true)).addSort("c_field", SortOrder.ASC).setSize(5).get(); assertNoFailures(searchResponse); assertThat(searchResponse.getHits().totalHits(), equalTo(500L)); assertThat(searchResponse.getHits().hits()[0].id(), equalTo("c000")); assertThat(searchResponse.getHits().hits()[1].id(), equalTo("c001")); assertThat(searchResponse.getHits().hits()[2].id(), equalTo("c002")); assertThat(searchResponse.getHits().hits()[3].id(), equalTo("c003")); assertThat(searchResponse.getHits().hits()[4].id(), equalTo("c004")); } }
3. SearchWithRejectionsIT#testOpenContextsAfterRejections()
Project: elasticsearch
File: SearchWithRejectionsIT.java
File: SearchWithRejectionsIT.java
public void testOpenContextsAfterRejections() throws InterruptedException { createIndex("test"); ensureGreen("test"); final int docs = scaledRandomIntBetween(20, 50); for (int i = 0; i < docs; i++) { client().prepareIndex("test", "type", Integer.toString(i)).setSource("field", "value").execute().actionGet(); } IndicesStatsResponse indicesStats = client().admin().indices().prepareStats().execute().actionGet(); assertThat(indicesStats.getTotal().getSearch().getOpenContexts(), equalTo(0L)); refresh(); int numSearches = 10; Future<SearchResponse>[] responses = new Future[numSearches]; SearchType searchType = randomFrom(SearchType.DEFAULT, SearchType.QUERY_AND_FETCH, SearchType.QUERY_THEN_FETCH, SearchType.DFS_QUERY_AND_FETCH, SearchType.DFS_QUERY_THEN_FETCH); logger.info("search type is {}", searchType); for (int i = 0; i < numSearches; i++) { responses[i] = client().prepareSearch().setQuery(matchAllQuery()).setSearchType(searchType).execute(); } for (int i = 0; i < numSearches; i++) { try { responses[i].get(); } catch (Throwable t) { } } awaitBusy(() -> client().admin().indices().prepareStats().execute().actionGet().getTotal().getSearch().getOpenContexts() == 0, 1, TimeUnit.SECONDS); indicesStats = client().admin().indices().prepareStats().execute().actionGet(); assertThat(indicesStats.getTotal().getSearch().getOpenContexts(), equalTo(0L)); }
4. DuelScrollIT#testDuelIndexOrderQueryThenFetch()
Project: elasticsearch
File: DuelScrollIT.java
File: DuelScrollIT.java
public void testDuelIndexOrderQueryThenFetch() throws Exception { final SearchType searchType = RandomPicks.randomFrom(random(), Arrays.asList(SearchType.QUERY_THEN_FETCH, SearchType.DFS_QUERY_THEN_FETCH)); final int numDocs = createIndex(false); testDuelIndexOrder(searchType, false, numDocs); testDuelIndexOrder(searchType, true, numDocs); }
5. DuelScrollIT#testDuelIndexOrderQueryAndFetch()
Project: elasticsearch
File: DuelScrollIT.java
File: DuelScrollIT.java
public void testDuelIndexOrderQueryAndFetch() throws Exception { final SearchType searchType = RandomPicks.randomFrom(random(), Arrays.asList(SearchType.QUERY_AND_FETCH, SearchType.DFS_QUERY_AND_FETCH)); // QUERY_AND_FETCH only works with a single shard final int numDocs = createIndex(true); testDuelIndexOrder(searchType, false, numDocs); testDuelIndexOrder(searchType, true, numDocs); }
6. DuelScrollIT#create()
Project: elasticsearch
File: DuelScrollIT.java
File: DuelScrollIT.java
private TestContext create(SearchType... searchTypes) throws Exception { assertAcked(prepareCreate("index").addMapping("type", jsonBuilder().startObject().startObject("type").startObject("properties").startObject("field1").field("type", "long").endObject().startObject("field2").field("type", "keyword").endObject().startObject("nested").field("type", "nested").startObject("properties").startObject("field3").field("type", "long").endObject().startObject("field4").field("type", "keyword").endObject().endObject().endObject().endObject().endObject().endObject())); int numDocs = 2 + randomInt(512); int scrollRequestSize = randomIntBetween(1, rarely() ? numDocs : numDocs / 2); boolean unevenRouting = randomBoolean(); int numMissingDocs = scaledRandomIntBetween(0, numDocs / 100); IntHashSet missingDocs = new IntHashSet(numMissingDocs); for (int i = 0; i < numMissingDocs; i++) { while (!missingDocs.add(randomInt(numDocs))) { } } for (int i = 1; i <= numDocs; i++) { IndexRequestBuilder indexRequestBuilder = client().prepareIndex("index", "type", String.valueOf(i)); if (missingDocs.contains(i)) { indexRequestBuilder.setSource("x", "y"); } else { indexRequestBuilder.setSource(jsonBuilder().startObject().field("field1", i).field("field2", String.valueOf(i)).startObject("nested").field("field3", i).field("field4", String.valueOf(i)).endObject().endObject()); } if (unevenRouting && randomInt(3) <= 2) { indexRequestBuilder.setRouting("a"); } indexRandom(false, indexRequestBuilder); } refresh(); final SortBuilder sort; if (randomBoolean()) { if (randomBoolean()) { sort = SortBuilders.fieldSort("field1").missing(1); } else { sort = SortBuilders.fieldSort("field2").missing("1"); } } else { if (randomBoolean()) { sort = SortBuilders.fieldSort("nested.field3").missing(1); } else { sort = SortBuilders.fieldSort("nested.field4").missing("1"); } } sort.order(randomBoolean() ? SortOrder.ASC : SortOrder.DESC); SearchType searchType = RandomPicks.randomFrom(random(), Arrays.asList(searchTypes)); logger.info("numDocs={}, scrollRequestSize={}, sort={}, searchType={}", numDocs, scrollRequestSize, sort, searchType); return new TestContext(numDocs, scrollRequestSize, sort, searchType); }