Browse Source

Fix CanMatchPreFilterSearchPhaseTests#testInvalidSortShards() test & SearchCancellationIT NPE (#101444)

closes https://github.com/elastic/elasticsearch/issues/101416

Related to: https://github.com/elastic/elasticsearch/issues/99929
Benjamin Trent 2 years ago
parent
commit
adea1cde96

+ 1 - 1
server/src/test/java/org/elasticsearch/action/search/CanMatchPreFilterSearchPhaseTests.java

@@ -442,7 +442,7 @@ public class CanMatchPreFilterSearchPhaseTests extends ESTestCase {
                 shardsIter,
                 timeProvider,
                 null,
-                true,
+                shardsIter.size() > shardToSkip.size(),
                 EMPTY_CONTEXT_PROVIDER,
                 ActionTestUtils.assertNoFailureListener(iter -> {
                     result.set(iter);

+ 3 - 1
test/framework/src/main/java/org/elasticsearch/test/AbstractSearchCancellationTestCase.java

@@ -281,7 +281,9 @@ public class AbstractSearchCancellationTestCase extends ESIntegTestCase {
             indexModule.addSearchOperationListener(new SearchOperationListener() {
                 @Override
                 public void onNewReaderContext(ReaderContext c) {
-                    runOnNewReaderContext.get().accept(c);
+                    if (runOnNewReaderContext.get() != null) {
+                        runOnNewReaderContext.get().accept(c);
+                    }
                 }
             });
         }