run count and search concurrently, but don't wait for count to be done #88
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Related Issue(s):
Description:
Previously, the count and search ES requests were run sequentially, so every search request was delayed for as long as it took to get the complete count of matches. This is an optional field in the Context Extension, and is generally not worth waiting on.
Now, the code creates tasks for both the count and search, and only awaits the search task. If the count task isn't completed by the time the search is finished and its results serialized to Items, the count is ignored and the items. are returned.
Also note that we do not cancel the count task, so that it will complete and the ES cache will be populated with the results for the next similar query.
PR Checklist:
pre-commit run --all-files
)make test
)make docs
)