diff options
Diffstat (limited to 'container-search/src/test')
8 files changed, 42 insertions, 118 deletions
diff --git a/container-search/src/test/java/com/yahoo/prelude/searcher/test/BlendingSearcherTestCase.java b/container-search/src/test/java/com/yahoo/prelude/searcher/test/BlendingSearcherTestCase.java index 69d66c6341f..50509300dd1 100644 --- a/container-search/src/test/java/com/yahoo/prelude/searcher/test/BlendingSearcherTestCase.java +++ b/container-search/src/test/java/com/yahoo/prelude/searcher/test/BlendingSearcherTestCase.java @@ -6,8 +6,6 @@ import java.util.HashMap; import java.util.Iterator; import java.util.List; import java.util.Map; -import java.util.concurrent.ExecutorService; -import java.util.concurrent.Executors; import com.yahoo.component.ComponentId; import com.yahoo.component.chain.Chain; @@ -49,18 +47,6 @@ public class BlendingSearcherTestCase { private static final double delta = 0.00000001; - private ExecutorService executor; - - @Before - public void setUp() throws Exception { - executor = Executors.newFixedThreadPool(16); - } - - @After - public void tearDown() { - assertEquals(0, executor.shutdownNow().size()); - } - public class BlendingSearcherWrapper extends Searcher { private SearchChain blendingChain; @@ -127,7 +113,7 @@ public class BlendingSearcherTestCase { StrictContractsConfig contracts = new StrictContractsConfig.Builder().build(); FederationSearcher fedSearcher = - new FederationSearcher(new FederationConfig(builder), contracts, new ComponentRegistry<>(), executor); + new FederationSearcher(new FederationConfig(builder), contracts, new ComponentRegistry<>()); BlendingSearcher blendingSearcher = new BlendingSearcher(blendingField); blendingChain = new SearchChain(ComponentId.createAnonymousComponentId("blendingChain"), blendingSearcher, fedSearcher); return true; diff --git a/container-search/src/test/java/com/yahoo/search/federation/FederationSearcherTest.java b/container-search/src/test/java/com/yahoo/search/federation/FederationSearcherTest.java index 7651849a519..ef9e0311e59 100644 --- a/container-search/src/test/java/com/yahoo/search/federation/FederationSearcherTest.java +++ b/container-search/src/test/java/com/yahoo/search/federation/FederationSearcherTest.java @@ -28,8 +28,6 @@ import java.util.Arrays; import java.util.Collection; import java.util.Iterator; import java.util.List; -import java.util.concurrent.ExecutorService; -import java.util.concurrent.Executors; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertNotNull; @@ -43,18 +41,6 @@ public class FederationSearcherTest { private static final String hasBeenFilled = "hasBeenFilled"; - private ExecutorService executor; - - @Before - public void setUp() throws Exception { - executor = Executors.newFixedThreadPool(16); - } - - @After - public void tearDown() { - assertEquals(0, executor.shutdownNow().size()); - } - @Test public void require_that_hits_are_not_automatically_filled() { Result result = federationToSingleAddHitSearcher().search(); @@ -69,7 +55,7 @@ public class FederationSearcherTest { @Test public void require_that_hits_can_be_filled_when_moved() { - FederationTester tester = new FederationTester(executor); + FederationTester tester = new FederationTester(); tester.addSearchChain("chain1", new AddHitSearcher()); tester.addSearchChain("chain2", new AddHitSearcher()); @@ -97,7 +83,7 @@ public class FederationSearcherTest { @Test public void require_that_hits_can_be_filled_for_multiple_chains_and_queries() { - FederationTester tester = new FederationTester(executor); + FederationTester tester = new FederationTester(); tester.addSearchChain("chain1", new AddHitSearcher()); tester.addSearchChain("chain2", new ModifyQueryAndAddHitSearcher("modified1")); tester.addSearchChain("chain3", new ModifyQueryAndAddHitSearcher("modified2")); @@ -111,7 +97,7 @@ public class FederationSearcherTest { @Test public void require_that_hits_that_time_out_in_fill_are_removed() { - FederationTester tester = new FederationTester(executor); + FederationTester tester = new FederationTester(); tester.addSearchChain("chain1", new AddHitSearcher()); tester.addSearchChain("chain2", new TimeoutInFillSearcher()); @@ -129,7 +115,7 @@ public class FederationSearcherTest { public void require_that_optional_search_chains_does_not_delay_federation() { BlockingSearcher blockingSearcher = new BlockingSearcher(); - FederationTester tester = new FederationTester(executor); + FederationTester tester = new FederationTester(); tester.addSearchChain("chain1", new AddHitSearcher()); tester.addOptionalSearchChain("chain2", blockingSearcher); @@ -158,7 +144,7 @@ public class FederationSearcherTest { @Test public void require_that_calling_a_single_slow_source_with_long_timeout_does_not_delay_federation() { - FederationTester tester = new FederationTester(executor); + FederationTester tester = new FederationTester(); tester.addSearchChain("chain1", new FederationOptions().setUseByDefault(true).setRequestTimeoutInMilliseconds(3600 * 1000), new BlockingSearcher() ); @@ -188,7 +174,7 @@ public class FederationSearcherTest { FederationSearcher searcher = new FederationSearcher( new FederationConfig(new FederationConfig.Builder().targetSelector(targetSelectorId.toString())), new StrictContractsConfig(new StrictContractsConfig.Builder()), - targetSelectors, executor); + targetSelectors); Query query = new Query(); query.setTimeout(20000); @@ -207,7 +193,7 @@ public class FederationSearcherTest { FederationSearcher searcher = new FederationSearcher( new FederationConfig(new FederationConfig.Builder().targetSelector(targetSelectorId.toString())), new StrictContractsConfig(new StrictContractsConfig.Builder()), - targetSelectors, executor); + targetSelectors); Query query = new Query(); query.setTimeout(20000); @@ -241,7 +227,7 @@ public class FederationSearcherTest { } private FederationTester federationToSingleAddHitSearcher() { - FederationTester tester = new FederationTester(executor); + FederationTester tester = new FederationTester(); tester.addSearchChain("chain1", new AddHitSearcher()); return tester; } diff --git a/container-search/src/test/java/com/yahoo/search/federation/FederationSearcherTestCase.java b/container-search/src/test/java/com/yahoo/search/federation/FederationSearcherTestCase.java index 65640cc94f0..d7c3217069c 100644 --- a/container-search/src/test/java/com/yahoo/search/federation/FederationSearcherTestCase.java +++ b/container-search/src/test/java/com/yahoo/search/federation/FederationSearcherTestCase.java @@ -25,8 +25,6 @@ import org.junit.Before; import org.junit.Test; import java.util.List; -import java.util.concurrent.ExecutorService; -import java.util.concurrent.Executors; import static com.yahoo.search.federation.StrictContractsConfig.PropagateSourceProperties; import static org.junit.Assert.assertEquals; @@ -64,20 +62,17 @@ public class FederationSearcherTestCase { private FederationConfig.Builder builder; private SearchChainRegistry chainRegistry; - private ExecutorService executor; @Before public void setUp() throws Exception { builder = new FederationConfig.Builder(); chainRegistry = new SearchChainRegistry(); - executor = Executors.newFixedThreadPool(16); } @After public void tearDown() { builder = null; chainRegistry = null; - assertEquals(0, executor.shutdownNow().size()); } private void addChained(Searcher searcher, String sourceName) { @@ -107,7 +102,7 @@ public class FederationSearcherTestCase { } private Searcher buildFederation(StrictContractsConfig contracts) throws RuntimeException { - return new FederationSearcher(new FederationConfig(builder), contracts, new ComponentRegistry<>(), executor); + return new FederationSearcher(new FederationConfig(builder), contracts, new ComponentRegistry<>()); } private SearchChain createSearchChain(ComponentId chainId,Searcher searcher) { @@ -169,8 +164,7 @@ public class FederationSearcherTestCase { new FederationSearcher(new FederationConfig(builder), new StrictContractsConfig( new StrictContractsConfig.Builder().searchchains(strictContracts)), - new ComponentRegistry<>(), - executor)); + new ComponentRegistry<>())); } @Test @@ -356,7 +350,7 @@ public class FederationSearcherTestCase { builder.addSourceForProvider(news, provider1, provider1, true, options, List.of()); builder.addSourceForProvider(news, provider2, provider2, false, options, List.of()); - return new FederationSearcher(new ComponentId("federation"), builder.build(), executor); + return new FederationSearcher(new ComponentId("federation"), builder.build()); } private static class MockProvider extends Searcher { diff --git a/container-search/src/test/java/com/yahoo/search/federation/FederationTester.java b/container-search/src/test/java/com/yahoo/search/federation/FederationTester.java index 433fe557b24..7a9d5f3a4f0 100644 --- a/container-search/src/test/java/com/yahoo/search/federation/FederationTester.java +++ b/container-search/src/test/java/com/yahoo/search/federation/FederationTester.java @@ -12,7 +12,6 @@ import com.yahoo.search.searchchain.SearchChainRegistry; import com.yahoo.search.searchchain.model.federation.FederationOptions; import java.util.Collections; -import java.util.concurrent.Executor; /** * @author Tony Vaagenes @@ -23,11 +22,7 @@ class FederationTester { private final SearchChainRegistry registry = new SearchChainRegistry(); private Execution execution; - private final Executor executor; - FederationTester(Executor executor) { - this.executor = executor; - } void addSearchChain(String id, Searcher... searchers) { addSearchChain(id, federationOptions(), searchers); } @@ -51,7 +46,7 @@ class FederationTester { } FederationSearcher buildFederationSearcher() { - return new FederationSearcher(ComponentId.fromString("federation"), builder.build(), executor); + return new FederationSearcher(ComponentId.fromString("federation"), builder.build()); } public Result search() { diff --git a/container-search/src/test/java/com/yahoo/search/federation/HitCountTestCase.java b/container-search/src/test/java/com/yahoo/search/federation/HitCountTestCase.java index 163263b7640..6f1570b702f 100644 --- a/container-search/src/test/java/com/yahoo/search/federation/HitCountTestCase.java +++ b/container-search/src/test/java/com/yahoo/search/federation/HitCountTestCase.java @@ -5,14 +5,10 @@ import com.yahoo.search.Query; import com.yahoo.search.Result; import com.yahoo.search.result.Hit; import com.yahoo.search.result.HitGroup; -import org.junit.After; -import org.junit.Before; import org.junit.Test; import java.util.ArrayList; import java.util.List; -import java.util.concurrent.ExecutorService; -import java.util.concurrent.Executors; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertTrue; @@ -22,24 +18,12 @@ import static org.junit.Assert.assertTrue; */ public class HitCountTestCase { - private ExecutorService executor; - - @Before - public void setUp() throws Exception { - executor = Executors.newFixedThreadPool(16); - } - - @After - public void tearDown() { - assertEquals(0, executor.shutdownNow().size()); - } - @Test public void require_that_offset_and_hits_are_adjusted_when_federating() { final int chain1RelevanceMultiplier = 1; final int chain2RelevanceMultiplier = 10; - FederationTester tester = new FederationTester(executor); + FederationTester tester = new FederationTester(); tester.addSearchChain("chain1", new AddHitsWithRelevanceSearcher("chain1", chain1RelevanceMultiplier)); tester.addSearchChain("chain2", new AddHitsWithRelevanceSearcher("chain2", chain2RelevanceMultiplier)); @@ -61,7 +45,7 @@ public class HitCountTestCase { final long chain2TotalHitCount = 7; final long chain2DeepHitCount = 11; - FederationTester tester = new FederationTester(executor); + FederationTester tester = new FederationTester(); tester.addSearchChain("chain1", new SetHitCountsSearcher(chain1TotalHitCount, chain1DeepHitCount)); tester.addSearchChain("chain2", new SetHitCountsSearcher(chain2TotalHitCount, chain2DeepHitCount)); @@ -79,7 +63,7 @@ public class HitCountTestCase { final long chain2TotalHitCount = 11; final long chain2DeepHitCount = 15; - FederationTester tester = new FederationTester(executor); + FederationTester tester = new FederationTester(); tester.addSearchChain("chain1", new SetHitCountsSearcher(chain1TotalHitCount, chain1DeepHitCount)); diff --git a/container-search/src/test/java/com/yahoo/search/searchchain/AsyncExecutionOfOneChainTestCase.java b/container-search/src/test/java/com/yahoo/search/searchchain/AsyncExecutionOfOneChainTestCase.java index 74d74e96b05..f0be6a25f92 100644 --- a/container-search/src/test/java/com/yahoo/search/searchchain/AsyncExecutionOfOneChainTestCase.java +++ b/container-search/src/test/java/com/yahoo/search/searchchain/AsyncExecutionOfOneChainTestCase.java @@ -58,12 +58,12 @@ public class AsyncExecutionOfOneChainTestCase { public Result search(Query query, Execution execution) { List<FutureResult> futureResults = new ArrayList<>(parallelism); for (int i = 0; i < parallelism; i++) - futureResults.add(new AsyncExecution(execution).search(query.clone(), executor)); + futureResults.add(new AsyncExecution(execution).search(query.clone())); Result mainResult = execution.search(query); // Add hits from other threads - AsyncExecution.waitForAll(futureResults,query.getTimeLeft(), executor); + AsyncExecution.waitForAll(futureResults,query.getTimeLeft()); for (FutureResult futureResult : futureResults) { Result result = futureResult.get(); mainResult.mergeWith(result); diff --git a/container-search/src/test/java/com/yahoo/search/searchchain/AsyncExecutionTestCase.java b/container-search/src/test/java/com/yahoo/search/searchchain/AsyncExecutionTestCase.java index ec1c78437b6..8f23c7eef83 100644 --- a/container-search/src/test/java/com/yahoo/search/searchchain/AsyncExecutionTestCase.java +++ b/container-search/src/test/java/com/yahoo/search/searchchain/AsyncExecutionTestCase.java @@ -7,15 +7,11 @@ import com.yahoo.search.Query; import com.yahoo.search.Result; import com.yahoo.search.Searcher; import com.yahoo.search.result.Hit; -import org.junit.After; -import org.junit.Before; import org.junit.Test; import java.util.ArrayList; import java.util.Arrays; import java.util.List; -import java.util.concurrent.ExecutorService; -import java.util.concurrent.Executors; import java.util.concurrent.TimeUnit; import static org.junit.Assert.assertEquals; @@ -30,29 +26,17 @@ import static org.junit.Assert.assertTrue; */ public class AsyncExecutionTestCase { - private ExecutorService executor; - - @Before - public void setUp() throws Exception { - executor = Executors.newFixedThreadPool(16); - } - - @After - public void tearDown() { - assertEquals(0, executor.shutdownNow().size()); - } - public static class WaitingSearcher extends Searcher { int waittime; - private WaitingSearcher(String id,int waittime) { + private WaitingSearcher(String id, int waittime) { super(new ComponentId(id)); this.waittime = waittime; } @Override - public Result search(Query query,Execution execution) { - Result result=execution.search(query); + public Result search(Query query, Execution execution) { + Result result = execution.search(query); if(waittime != 0) try { Thread.sleep(waittime); @@ -64,7 +48,7 @@ public class AsyncExecutionTestCase { public static class SimpleSearcher extends Searcher { - public Result search(Query query,Execution execution) { + public Result search(Query query, Execution execution) { return execution.search(query); } @@ -79,7 +63,7 @@ public class AsyncExecutionTestCase { Chain<Searcher> searchChain = new Chain<>(new ComponentId("chain"), searchList); AsyncExecution asyncExecution = new AsyncExecution(searchChain, Execution.Context.createContextStub()); - FutureResult future = asyncExecution.search(new Query("?hits=0"), executor); + FutureResult future = asyncExecution.search(new Query("?hits=0")); Result result = future.get(0, TimeUnit.MILLISECONDS); assertNotNull(result.hits().getError()); @@ -98,11 +82,11 @@ public class AsyncExecutionTestCase { Arrays.asList(new Searcher[]{new SimpleSearcher()}) ); - FutureResult slowFuture = new AsyncExecution(slowChain, Execution.Context.createContextStub()).search(new Query("?hits=0"), executor); - FutureResult fastFuture = new AsyncExecution(fastChain, Execution.Context.createContextStub()).search(new Query("?hits=0"), executor); + FutureResult slowFuture = new AsyncExecution(slowChain, Execution.Context.createContextStub()).search(new Query("?hits=0")); + FutureResult fastFuture = new AsyncExecution(fastChain, Execution.Context.createContextStub()).search(new Query("?hits=0")); fastFuture.get(); FutureResult [] reslist = new FutureResult[]{slowFuture,fastFuture}; - List<Result> results = AsyncExecution.waitForAll(Arrays.asList(reslist),0, executor); + List<Result> results = AsyncExecution.waitForAll(Arrays.asList(reslist),0); //assertTrue(slowFuture.isCancelled()); assertTrue(fastFuture.isDone() && !fastFuture.isCancelled()); @@ -133,26 +117,26 @@ public class AsyncExecutionTestCase { @Test public void testAsyncThroughSync() { - Query query=new Query("?query=test"); - Searcher searcher=new ResultProducingSearcher(); - FutureResult futureResult=new AsyncExecution(new Execution(searcher, Execution.Context.createContextStub())).search(query, executor); + Query query = new Query("?query=test"); + Searcher searcher = new ResultProducingSearcher(); + FutureResult futureResult = new AsyncExecution(new Execution(searcher, Execution.Context.createContextStub())).search(query); - List<FutureResult> futureResultList=new ArrayList<>(); + List<FutureResult> futureResultList = new ArrayList<>(); futureResultList.add(futureResult); - AsyncExecution.waitForAll(futureResultList,1000, executor); - Result result=futureResult.get(); + AsyncExecution.waitForAll(futureResultList, 1000); + Result result = futureResult.get(); - assertEquals(1,result.hits().size()); - assertEquals("hello",result.hits().get(0).getField("test")); + assertEquals(1, result.hits().size()); + assertEquals("hello", result.hits().get(0).getField("test")); } private static class ResultProducingSearcher extends Searcher { @Override - public Result search(Query query,Execution execution) { - Result result=new Result(query); - Hit hit=new Hit("test"); - hit.setField("test","hello"); + public Result search(Query query, Execution execution) { + Result result = new Result(query); + Hit hit = new Hit("test"); + hit.setField("test", "hello"); result.hits().add(hit); return result; } @@ -174,7 +158,7 @@ public class AsyncExecutionTestCase { }); Execution execution = new Execution(chain, Execution.Context.createContextStub()); AsyncExecution async = new AsyncExecution(execution); - FutureResult future = async.searchAndFill(new Query(), executor); + FutureResult future = async.searchAndFill(new Query()); future.get(1, TimeUnit.MILLISECONDS); } diff --git a/container-search/src/test/java/com/yahoo/search/searchchain/VespaAsyncSearcherTest.java b/container-search/src/test/java/com/yahoo/search/searchchain/VespaAsyncSearcherTest.java index 0b893020a16..7ac6ded7877 100644 --- a/container-search/src/test/java/com/yahoo/search/searchchain/VespaAsyncSearcherTest.java +++ b/container-search/src/test/java/com/yahoo/search/searchchain/VespaAsyncSearcherTest.java @@ -2,7 +2,6 @@ package com.yahoo.search.searchchain; import com.yahoo.component.chain.Chain; -import com.yahoo.concurrent.InThreadExecutorService; import com.yahoo.search.Query; import com.yahoo.search.Result; import com.yahoo.search.Searcher; @@ -12,7 +11,6 @@ import org.junit.Test; import java.util.ArrayList; import java.util.List; -import java.util.concurrent.Executor; import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; @@ -40,19 +38,16 @@ public class VespaAsyncSearcherTest { private static class FirstSearcher extends Searcher { - private final Executor executor; - FirstSearcher(Executor executor) { this.executor = executor;} - @Override public Result search(Query query, Execution execution) { int count = 10; List<FutureResult> futures = new ArrayList<>(count); for (int i = 0; i < count; i++) { Query subQuery = query.clone(); - FutureResult future = new AsyncExecution(execution).search(subQuery, executor); + FutureResult future = new AsyncExecution(execution).search(subQuery); futures.add(future); } - AsyncExecution.waitForAll(futures, 10 * 60 * 1000, new InThreadExecutorService()); + AsyncExecution.waitForAll(futures, 10 * 60 * 1000); Result combinedResult = new Result(query); for (FutureResult resultFuture : futures) { Result result = resultFuture.get(); @@ -75,7 +70,7 @@ public class VespaAsyncSearcherTest { @Test public void testAsyncExecution() { - Chain<Searcher> chain = new Chain<>(new FirstSearcher(executor), new SecondSearcher()); + Chain<Searcher> chain = new Chain<>(new FirstSearcher(), new SecondSearcher()); Execution execution = new Execution(chain, Execution.Context.createContextStub(null)); Query query = new Query(); execution.search(query); |