SearchServiceTests.testIsParallelCollectionSupportedForResults fails intermittently

```
12:37:10 org.elasticsearch.search.SearchServiceTests > testIsParallelCollectionSupportedForResults FAILED
12:37:10     java.lang.AssertionError
12:37:10         at __randomizedtesting.SeedInfo.seed([4140C168DE8FB0BB:771A78D5E4B36180]:0)
12:37:10         at org.junit.Assert.fail(Assert.java:86)
12:37:10         at org.junit.Assert.assertTrue(Assert.java:41)
12:37:10         at org.junit.Assert.assertFalse(Assert.java:64)
12:37:10         at org.junit.Assert.assertFalse(Assert.java:74)
12:37:10         at org.elasticsearch.search.SearchServiceTests.testIsParallelCollectionSupportedForResults(SearchServiceTests.java:2096)
```

```
./gradlew ':server:test' --tests "org.elasticsearch.search.SearchServiceTests.testIsParallelCollectionSupportedForResults" -Dtests.seed=4140C168DE8FB0BB -Dtests.locale=es-SV -Dtests.timezone=Africa/Banjul -Druntime.java=20
```
server/src/test/java/org/elasticsearch/search/SearchServiceTests.java
if (randomBoolean()) {
                        assertTrue(searchService.freeReaderContext(contextId));
                    } else {
                        assertTrue(
                            searchService.freeReaderContext((new ShardSearchContextId(contextId.getSessionId(), contextId.getId())))
                        );
                    }
                    contextIds.remove(contextId);
                    assertThat(searchService.getActiveContexts(), equalTo(contextIds.size()));
                    assertFalse(searchService.freeReaderContext(contextId));
                    assertThat(searchService.getActiveContexts(), equalTo(contextIds.size()));
                }
            } finally {
                latch.countDown();
            }
        });
        latch.await();
    }
    public void testOpenReaderContext() {
        createIndex("index");
        SearchService searchService = getInstanceFromNode(SearchService.class);
        PlainActionFuture<ShardSearchContextId> future = new PlainActionFuture<>();
        searchService.openReaderContext(new ShardId(resolveIndex("index"), 0), TimeValue.timeValueMinutes(between(1, 10)), future);
        future.actionGet();
        assertThat(searchService.getActiveContexts(), equalTo(1));
        assertTrue(searchService.freeReaderContext(future.actionGet()));
    }
    public void testCancelQueryPhaseEarly() throws Exception {
        createIndex("index");
        final MockSearchService service = (MockSearchService) getInstanceFromNode(SearchService.class);