Explicitly say if stored fields aren't supported in MapperTestCase#72474
Merged
romseygeek merged 1 commit intoelastic:masterfrom Apr 30, 2021
Merged
Explicitly say if stored fields aren't supported in MapperTestCase#72474romseygeek merged 1 commit intoelastic:masterfrom
romseygeek merged 1 commit intoelastic:masterfrom
Conversation
Collaborator
|
Pinging @elastic/es-search (Team:Search) |
iverase
reviewed
Apr 29, 2021
| } | ||
| assumeTrue("Field type does not support stored fields", supportsStoredFields()); | ||
| MapperService mapperService = createMapperService(fieldMapping(this::minimalStoreMapping)); | ||
| assertParseMinimalWarnings(); |
romseygeek
added a commit
that referenced
this pull request
Apr 30, 2021
…72474) MapperTestCase has a check that if a field mapper supports stored fields, those stored fields are available to index time scripts. Many of our mappers do not support stored fields, and we try and catch this with an assumeFalse so that those mappers do not run this test. However, this test is fragile - it does not work for mappers created with an index version below 8.0, and it misses mappers that always store their values, e.g. match_only_text. This commit adds a new supportsStoredField method to MapperTestCase, and overrides it for those mappers that do not support storing values. It also adds a minimalStoredMapping method that defaults to the minimal mapping plus a store parameter, which is overridden by match_only_text because storing is not configurable and always available on this mapper.
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.
MapperTestCase has a check that if a field mapper supports stored fields,
those stored fields are available to index time scripts. Many of our mappers
do not support stored fields, and we try and catch this with an assumeFalse
so that those mappers do not run this test. However, this test is fragile - it
does not work for mappers created with an index version below 8.0, and it
misses mappers that always store their values, e.g.
match_only_text.This commit adds a new
supportsStoredFieldmethod to MapperTestCase,and overrides it for those mappers that do not support storing values. It
also adds a
minimalStoredMappingmethod that defaults to the minimalmapping plus a
storeparameter, which is overridden bymatch_only_textbecause storing is not configurable and always available on this mapper.