Handle deleted rollover index exclusions - #1319
Draft
Pybsama wants to merge 1 commit into
Draft
Conversation
|
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Why
ElasticGraph caches the concrete indices related to a rollover template. If one
of those indices is then deleted manually, a later range-filtered search can
still include the deleted name as an exclusion in its
_msearchindexexpression. OpenSearch rejects that request with
index_not_found_exception.What
ignore_unavailable: trueonly on_msearchmetadata headers whoseindex expression contains exclusions. Unlike
allow_no_indices, this optionignores a missing concrete target such as the deleted index in an exclusion
expression, while ordinary positive-index queries retain their existing
failure behavior.
deletes one, and verifies a range-filtered search still returns the document
from the remaining index.
ordinary header.
Validation
mapper-sizeandanalysis-icuplugins): 1 example, 0 failures.script/linton all three changed files.script/type_check.script/spellcheck.bundle exec rake schema_artifacts:check._msearchverification confirmed the originalwildcard,-deleted-indexexpression returns a 404 sub-response withallow_no_indices: trueand a 200 sub-response withignore_unavailable: true.:no_vcrdatastore regression is also included in the CI matrix forElasticsearch 9.0/9.4 and OpenSearch 2.19/3.6.
Risk assessment
Low. The change adds an officially supported
_msearchmetadata option onlywhen the generated index expression contains exclusions. Ordinary positive
index queries keep their current strict behavior. Index expressions, routing,
request bodies, query grouping, and public APIs are unchanged. The integration
regression preserves a remaining live index, so it also verifies that successful
results are not swallowed.
References
Closes #589.