-
Notifications
You must be signed in to change notification settings - Fork 25.2k
Add index.mode: time_series
#77626
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
Add index.mode: time_series
#77626
Conversation
Pinging @elastic/es-analytics-geo (Team:Analytics) |
This is a tiny tiny tiny part of the rebuild of #75638. But opening it is a good sign! I feel like I really can get to the meat of the rebuild soon. |
This adds a setting to enable time series mode that is hidden by the `es.index_mode_feature_flag_registered` feature flag. All it does right now is make sure you haven't configured index sorting and partitioning. This gives us a place to "hang" all of our further work on time series mode. Time series mode will entirely take over index sorting. We don't believe you'll ever be able to configure sorting yourself when you are in time series mode. We don't expect time series mode to support index partitioning when we first build it but we'd like to get there.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM. I assume you ran a test build locally with -Dbuild.snapshot=false
to see the tests were ok? We don't actually run in that configuration in PR or intake jobs.
I hadn't. Let me give that a go. |
Well first time trying it everything crashed. I've stared with |
Yeah, the load average was 130 and the machine has 12 cores.... With |
After a few false starts I have some progress!
It's been a long, long, long time since I ran the entire suite locally. |
return IndexMode.VALIDATE_WITH_SETTINGS.iterator(); | ||
} | ||
}, | ||
Property.IndexScope |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This should probably also have Property.Final
.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Indeed Property.Final
seems like that way to go here.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Should INDEX_ROUTING_PARTITION_SIZE_SETTING
be Final as well? It is not marked Final but it seems like it shouldn't be set after index creation.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I opened #77669 to talk about that.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM.
return IndexMode.VALIDATE_WITH_SETTINGS.iterator(); | ||
} | ||
}, | ||
Property.IndexScope |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Indeed Property.Final
seems like that way to go here.
return IndexMode.VALIDATE_WITH_SETTINGS.iterator(); | ||
} | ||
}, | ||
Property.IndexScope |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Should INDEX_ROUTING_PARTITION_SIZE_SETTING
be Final as well? It is not marked Final but it seems like it shouldn't be set after index creation.
Lovely:
Failed overnight. I think, maybe, we need a way to make CI do this for me. Or we need some better way for me to do it locally. |
Didn't fail locally on second run, either with |
I've tested this a bunch locally and it looks ok. I've merged to master and manually kicked off a non-snapshot build using it. I'm going to wait to backport until it passes. |
This adds a setting to enable time series mode that is hidden by the `es.index_mode_feature_flag_registered` feature flag. All it does right now is make sure you haven't configured index sorting and partitioning. This gives us a place to "hang" all of our further work on time series mode. Time series mode will entirely take over index sorting. We don't believe you'll ever be able to configure sorting yourself when you are in time series mode. We don't expect time series mode to support index partitioning when we first build it but we'd like to get there.
This adds a setting to enable time series mode that is hidden by the `es.index_mode_feature_flag_registered` feature flag. All it does right now is make sure you haven't configured index sorting and partitioning. This gives us a place to "hang" all of our further work on time series mode. Time series mode will entirely take over index sorting. We don't believe you'll ever be able to configure sorting yourself when you are in time series mode. We don't expect time series mode to support index partitioning when we first build it but we'd like to get there.
Now that elastic#77626 has landed we can test tsdb *things* against 7.16.
I'm pulling this back out of 7.16 because we don't really have a chance of making a useful tsdb in time. So there isn't really any need to have the setting in that version. |
#78570 is the revert PR |
This adds a setting to enable time series mode that is hidden by the
es.index_mode_feature_flag_registered
feature flag. All it does rightnow is make sure you haven't configured index sorting and partitioning.
This gives us a place to "hang" all of our further work on time series
mode.
Time series mode will entirely take over index sorting. We don't believe
you'll ever be able to configure sorting yourself when you are in time
series mode. We don't expect time series mode to support index
partitioning when we first build it but we'd like to get there.