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
Deprecate [indices.queries.cache.all_segments] setting #85423
Conversation
Pinging @elastic/es-search (Team:Search) |
Hi @dnhatn, I've created a changelog YAML for you. |
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.
Thanks @dnhatn. I am not familiar enough with the settings infrastructure anymore to know whether this is the best way to do this, but I agree we should warn users when they do this.
@jpountz Thanks for review. Are we okay to remove that setting and register it in a test plugin? I was worried that is a breaking change. |
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 makes sense to me too. I'm wondering if we should mention "the setting will be removed in a future version", and if so we could make this a deprecation warning?
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.
Expanding on my last comment -- what if we marked this setting as deprecated too, so we could remove it entirely in a future version? I think we do that by adding Property.DEPRECATED
to the setting.
@@ -796,7 +796,7 @@ public synchronized void verifyIndexMetadata(IndexMetadata metadata, IndexMetada | |||
IndicesFieldDataCache indicesFieldDataCache = new IndicesFieldDataCache(settings, new IndexFieldDataCache.Listener() { | |||
}); | |||
closeables.add(indicesFieldDataCache); | |||
IndicesQueryCache indicesQueryCache = new IndicesQueryCache(settings); | |||
IndicesQueryCache indicesQueryCache = new IndicesQueryCache(Settings.EMPTY); |
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.
Did you mean to make this change?
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.
Yes, to avoid many warning/deprecation logs. The cache here is just a place holder.
Yes, but that would require larger changes (i.e., handling deprecation logs in tests). I will make it in a follow-up as I prefer to have this warning in 8.2.0. |
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.
Thanks for the explanations, sounds good to get this warning into 8.2.
@jtibshirani We have a nice infra to verify deprecated settings. I've updated this PR to deprecate the setting instead. |
Hi @dnhatn, I've updated the changelog YAML for you. Note that since this PR is labelled |
We can leave the test setting as is. |
The
indices.queries.cache.all_segments
setting should not be used in production environments. This change deprecates that setting.