-
Notifications
You must be signed in to change notification settings - Fork 25.5k
Remove index.dimensions feature flag #135402
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Remove index.dimensions feature flag #135402
Conversation
Pinging @elastic/es-storage-engine (Team:StorageEngine) |
Hi @felixbarny, I've created a changelog YAML for you. |
Bubbling up a good question @henningandersen has raised:
In that case, we’d indeed create a new tsid. So far, we’ve been considering that to be acceptable as it’s only happening in an edge case. But we didn’t think about the implications on translog replay: Scenario A Lines 174 to 179 in f7a1b9e
When the translog operation is replayed, it would then create a tsid based on elasticsearch/server/src/main/java/org/elasticsearch/index/mapper/TsidExtractingIdFieldMapper.java Lines 86 to 97 in 40f3a1c
Scenario B Click to expand ...creates a time series index with a single dimension and disables dynamic mappings
To me, the bottom line is that we should also store the tsid in the translog. If we don't, there can be weird situations where the re-computed id differs from the one in the translog as the dimension mappings have changed. As a side-effect, translog operations will be more efficient, as we don't need to re-compute the tsid. However, it sounds like this would take some time and that we likely won't be able to do this for 9.2. Removing this feature flag as-is would expose us to a new failure scenario compared to what we have today (scenario A). A potential short-term alternative is to disallow adding dynamic template for dimensions to the mappings so that the change can only happing after a rollover. However, this would be a breaking change and fix only scenario A |
Here's a draft PR that avoids changing the tsid creation strategy from |
Removes the feature flag for the tsid hashing improvements added in #132566.