diff options
author | Jon Bratseth <bratseth@gmail.com> | 2021-10-08 13:52:48 +0200 |
---|---|---|
committer | Jon Bratseth <bratseth@gmail.com> | 2021-10-08 13:52:48 +0200 |
commit | 475f0c93523daa1c3c53786ee8a9a9aee6702204 (patch) | |
tree | d20932871aa4c917052f2e37dde77c5d4a880e39 /container-search/src/test/java/com/yahoo/search/searchchain | |
parent | 9d435e48c742b3efc94c68c02da835c5f5298255 (diff) |
Use the executor from the context
Diffstat (limited to 'container-search/src/test/java/com/yahoo/search/searchchain')
3 files changed, 26 insertions, 47 deletions
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); |