Set default index mode for TimeSeries to null#98586
Merged
kkrik-es merged 9 commits intoelastic:mainfrom Aug 23, 2023
Merged
Conversation
If the default index mode matches the specified, we skip printing the synthetic source info in the mappings printing. This leads to confusion as it's not immediately visible (or well known) that time series indices use synthetic source by default. Leaving the default index mode to null does the trick here. We do pass the right value for time series indexes while building the mapping so there's no functional impact here. Fixes elastic#97429
Collaborator
|
Hi @kkrik-es, I've created a changelog YAML for you. |
Collaborator
|
Pinging @elastic/es-analytics-geo (Team:Analytics) |
Member
Author
|
@elasticsearchmachine run elasticsearch-ci/bwc |
martijnvg
reviewed
Aug 22, 2023
server/src/main/java/org/elasticsearch/index/mapper/SourceFieldMapper.java
Show resolved
Hide resolved
martijnvg
reviewed
Aug 22, 2023
Member
martijnvg
left a comment
There was a problem hiding this comment.
Left one comment about the assertion. Otherwise looks good.
server/src/main/java/org/elasticsearch/index/mapper/DocumentMapper.java
Outdated
Show resolved
Hide resolved
martijnvg
reviewed
Aug 23, 2023
| * This got restored in v.8.9 (and patched in v.8.8) to avoid confusion. The change is only restricted to | ||
| * mapping printout, it has no functional effect as the synthetic source already applies. | ||
| */ | ||
| this.mappingSource = mapping.toCompressedXContent(); |
Member
There was a problem hiding this comment.
By doing this.mappingSource = mapping.toCompressedXContent(); we are changing the mapping source to contain the missing _source: mode: synthetic right?
If we would do this.mappingSource = source; here, then the that would remain to be missing?
Member
Author
There was a problem hiding this comment.
Correct. I was thinking of storing a source that matches this output to avoid surprises further down the processing pipeline, but up to you.
kkrik-es
added a commit
to kkrik-es/elasticsearch
that referenced
this pull request
Aug 23, 2023
* Default index mode null for TimeSeries If the default index mode matches the specified, we skip printing the synthetic source info in the mappings printing. This leads to confusion as it's not immediately visible (or well known) that time series indices use synthetic source by default. Leaving the default index mode to null does the trick here. We do pass the right value for time series indexes while building the mapping so there's no functional impact here. Fixes elastic#97429 * Update docs/changelog/98586.yaml * Restore other error messages. * Update source in DocumentMapper to include synthetic source. * Add version check for skipping assert
Collaborator
💚 Backport successful
|
elasticsearchmachine
pushed a commit
that referenced
this pull request
Aug 23, 2023
* Default index mode null for TimeSeries If the default index mode matches the specified, we skip printing the synthetic source info in the mappings printing. This leads to confusion as it's not immediately visible (or well known) that time series indices use synthetic source by default. Leaving the default index mode to null does the trick here. We do pass the right value for time series indexes while building the mapping so there's no functional impact here. Fixes #97429 * Update docs/changelog/98586.yaml * Restore other error messages. * Update source in DocumentMapper to include synthetic source. * Add version check for skipping assert
kkrik-es
added a commit
to kkrik-es/elasticsearch
that referenced
this pull request
Aug 23, 2023
This reverts commit 56abb86.
kkrik-es
added a commit
that referenced
this pull request
Aug 23, 2023
* Skip segment for MatchNoDocsQuery filters. When a query of a filter gets rewritten to MatchNoDocsQuery, segments will not produce any results. We can therefore skip processing such segments. This applies to FilterByFilterAggregator and FiltersAggregator, as well as to TermsAggregator when it uses StringTermsAggregatorFromFilters internally; the latter is an adapter aggregator to FilterByFilterAggregator. Fixes #94637 * Update docs/changelog/98295.yaml * Check all filters for `MatchNoDocsQuery`. * Skip optimization when 'other' bucket is requested. * Revert "Set default index mode for TimeSeries to `null` (#98586)" This reverts commit 56abb86.
kkrik-es
added a commit
to kkrik-es/elasticsearch
that referenced
this pull request
Aug 23, 2023
* Skip segment for MatchNoDocsQuery filters. When a query of a filter gets rewritten to MatchNoDocsQuery, segments will not produce any results. We can therefore skip processing such segments. This applies to FilterByFilterAggregator and FiltersAggregator, as well as to TermsAggregator when it uses StringTermsAggregatorFromFilters internally; the latter is an adapter aggregator to FilterByFilterAggregator. Fixes elastic#94637 * Update docs/changelog/98295.yaml * Check all filters for `MatchNoDocsQuery`. * Skip optimization when 'other' bucket is requested. * Revert "Set default index mode for TimeSeries to `null` (elastic#98586)" This reverts commit 56abb86.
elasticsearchmachine
pushed a commit
that referenced
this pull request
Aug 23, 2023
* Skip segment for MatchNoDocsQuery filters. When a query of a filter gets rewritten to MatchNoDocsQuery, segments will not produce any results. We can therefore skip processing such segments. This applies to FilterByFilterAggregator and FiltersAggregator, as well as to TermsAggregator when it uses StringTermsAggregatorFromFilters internally; the latter is an adapter aggregator to FilterByFilterAggregator. Fixes #94637 * Update docs/changelog/98295.yaml * Check all filters for `MatchNoDocsQuery`. * Skip optimization when 'other' bucket is requested. * Revert "Set default index mode for TimeSeries to `null` (#98586)" This reverts commit 56abb86.
kkrik-es
added a commit
to kkrik-es/elasticsearch
that referenced
this pull request
Aug 23, 2023
This reverts commit e370194.
kkrik-es
added a commit
that referenced
this pull request
Aug 25, 2023
* Skip segment for MatchNoDocsQuery filters. When a query of a filter gets rewritten to MatchNoDocsQuery, segments will not produce any results. We can therefore skip processing such segments. This applies to FilterByFilterAggregator and FiltersAggregator, as well as to TermsAggregator when it uses StringTermsAggregatorFromFilters internally; the latter is an adapter aggregator to FilterByFilterAggregator. Fixes #94637 * Update docs/changelog/98295.yaml * Check all filters for `MatchNoDocsQuery`. * Skip optimization when 'other' bucket is requested. * Revert "Set default index mode for TimeSeries to `null` (#98586)" This reverts commit 56abb86. * Revert "Rollback of #98586 (#98805)" This reverts commit e370194. * Skip updating source when missing synthetic mode * Update docs/changelog/98808.yaml * Skip matching assert in MapperService too * Refine the assert * Extend versions before 8.6, when TS had no synthetic source * Add source field mapping for non-synthetic TSDB * Delete 98586.yaml Duplicate changelog * Add comment to TSDB_NO_SYNTHETIC mapping * Spotless fix * Add yaml test * Fix version skip in yaml test
kkrik-es
added a commit
to kkrik-es/elasticsearch
that referenced
this pull request
Aug 25, 2023
* Skip segment for MatchNoDocsQuery filters. When a query of a filter gets rewritten to MatchNoDocsQuery, segments will not produce any results. We can therefore skip processing such segments. This applies to FilterByFilterAggregator and FiltersAggregator, as well as to TermsAggregator when it uses StringTermsAggregatorFromFilters internally; the latter is an adapter aggregator to FilterByFilterAggregator. Fixes elastic#94637 * Update docs/changelog/98295.yaml * Check all filters for `MatchNoDocsQuery`. * Skip optimization when 'other' bucket is requested. * Revert "Set default index mode for TimeSeries to `null` (elastic#98586)" This reverts commit 56abb86. * Revert "Rollback of elastic#98586 (elastic#98805)" This reverts commit e370194. * Skip updating source when missing synthetic mode * Update docs/changelog/98808.yaml * Skip matching assert in MapperService too * Refine the assert * Extend versions before 8.6, when TS had no synthetic source * Add source field mapping for non-synthetic TSDB * Delete 98586.yaml Duplicate changelog * Add comment to TSDB_NO_SYNTHETIC mapping * Spotless fix * Add yaml test * Fix version skip in yaml test
elasticsearchmachine
pushed a commit
that referenced
this pull request
Aug 25, 2023
* Skip segment for MatchNoDocsQuery filters. When a query of a filter gets rewritten to MatchNoDocsQuery, segments will not produce any results. We can therefore skip processing such segments. This applies to FilterByFilterAggregator and FiltersAggregator, as well as to TermsAggregator when it uses StringTermsAggregatorFromFilters internally; the latter is an adapter aggregator to FilterByFilterAggregator. Fixes #94637 * Update docs/changelog/98295.yaml * Check all filters for `MatchNoDocsQuery`. * Skip optimization when 'other' bucket is requested. * Revert "Set default index mode for TimeSeries to `null` (#98586)" This reverts commit 56abb86. * Revert "Rollback of #98586 (#98805)" This reverts commit e370194. * Skip updating source when missing synthetic mode * Update docs/changelog/98808.yaml * Skip matching assert in MapperService too * Refine the assert * Extend versions before 8.6, when TS had no synthetic source * Add source field mapping for non-synthetic TSDB * Delete 98586.yaml Duplicate changelog * Add comment to TSDB_NO_SYNTHETIC mapping * Spotless fix * Add yaml test * Fix version skip in yaml test
bpintea
pushed a commit
to bpintea/elasticsearch
that referenced
this pull request
Aug 25, 2023
* Skip segment for MatchNoDocsQuery filters. When a query of a filter gets rewritten to MatchNoDocsQuery, segments will not produce any results. We can therefore skip processing such segments. This applies to FilterByFilterAggregator and FiltersAggregator, as well as to TermsAggregator when it uses StringTermsAggregatorFromFilters internally; the latter is an adapter aggregator to FilterByFilterAggregator. Fixes elastic#94637 * Update docs/changelog/98295.yaml * Check all filters for `MatchNoDocsQuery`. * Skip optimization when 'other' bucket is requested. * Revert "Set default index mode for TimeSeries to `null` (elastic#98586)" This reverts commit 56abb86. * Revert "Rollback of elastic#98586 (elastic#98805)" This reverts commit e370194. * Skip updating source when missing synthetic mode * Update docs/changelog/98808.yaml * Skip matching assert in MapperService too * Refine the assert * Extend versions before 8.6, when TS had no synthetic source * Add source field mapping for non-synthetic TSDB * Delete 98586.yaml Duplicate changelog * Add comment to TSDB_NO_SYNTHETIC mapping * Spotless fix * Add yaml test * Fix version skip in yaml test
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.
If the default index mode matches the specified, we skip printing the synthetic source info in mappings. This leads to confusion as it's not immediately visible (or well known) that time series indices use synthetic source by default.
Leaving the default index mode to null does the trick here. We do pass the right value for time series indexes while building the mapping so there's no other functional impact.
Fixes #97429