HttpSolrClient withTheseParamNamesInTheUrl defaults - #4871
Conversation
HttpSolrClient.withTheseParamNamesInTheUrl now has a default set (if you don't call it) that ensures many interesting parameters for routing or fundamental purpose end up in the URL.
dsmiley
left a comment
There was a problem hiding this comment.
I like how the tracing test, especially after I revamped it recently, shows the impacts of this change.
It may be tempting to add "command" param for replication but I recall those requests are all GET? No; some are POST so I will add.
|
Gonna merge Sunday if no feedback. One possible consideration is, should these defaults be augmented/merged with a call to explicitly set them. I don't think I care much either way... but a benefit to not doing that is that a user can explicitly insist no params go in the URL if they want. Granted I don't know why they would care. Only one place in Solr, Distributed URP, is this called, which is to set the update distribution params. Update requests don't use any of these default params, so whatever. |
Updated DEFAULT_URL_PARAM_NAMES to public access.
HttpSolrClient impls now sends certain interesting request parameters in the URL query string when a POST of parameters is submitted. In other words, withTheseParamNamesInTheUrl now has a default set. This improves observability, particularly for distributed search & admin commands. (cherry picked from commit 125f7c0)
HttpSolrClient impls now sends certain interesting request parameters in the URL query string when a POST of parameters is submitted. In other words, withTheseParamNamesInTheUrl now has a default set. This improves observability, particularly for distributed search & admin commands. Backport adapted for the 9x client hierarchy: the default set and its application land in HttpSolrClientBase (shared by Http2SolrClient / HttpJdkSolrClient / CloudHttp2SolrClient / LBHttp2SolrClient); on main these were merged into the HttpSolrClient base by SOLR-17968 (#3829), which is not on branch_9x. The deprecated Apache-HttpClient HttpSolrClient is left unchanged. (cherry picked from commit 5c3ae79) Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01BtZLUe51kwP5rcZyNgE9hG
HttpSolrClient.withTheseParamNamesInTheUrl now has a default set (if you don't call it) that ensures many interesting parameters for routing or fundamental purpose end up in the URL.