[
https://issues.apache.org/jira/browse/SOLR-18434?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Chris M. Hostetter updated SOLR-18434:
--------------------------------------
Description:
(See parent Jira for larger context: SOLR-18433)
# {{SolrRequest.getPreferredNodes()}} is only respected by {{CloudSolrClient}}
in the specific case of a request that is {{true == requresCollection)}}
*_AND_* {{getApiVersion() != V2}}
# _when_ {{SolrRequest.getPreferredNodes()}} is used, it's not just used as a
list of "preferred" nodes – it's a list of nodes that are used *_exclusively_*
– no replicas on any other liveNodes are even included in the list of Endpoints
given the to {{{}LBSolrClient{}}}.
This is very strange, since:
# There are no docs for {{SolrRequest.setPreferredNode()}} - let alone any
impling that it's only for (non V2) collection specific requests.
# The very _name_ of the method suggest it's a "preferrence" not an exclusive
list
It's particularly strange since using {{SolrRequest.setPreferredNode()}} seems
like the most obvious course of action for users trying to follow the
recommended instructions (of trying to send collection admin requests to a
consistent node) when disabling the overseer.
----
I seems to me that:
* {{SolrRequest.getPreferredNodes()}} shouldn't be respected for *ALL* types
of requests
* either the docs of {{SolrRequest.setPreferredNode()}} should make it very
clear that it is an *exclusive* list of nodes that the request will be sent to,
_OR_ {{SolrRequest.getPreferredNodes()}} should only be used when
sorting/prioritizing a larger list of endpoints
** which raises questions of how it should interact with
{{ReplicaListTransformer}} ?
was:
(See parent Jira for larger context: SOLR-18433)
{{SolrRequest.getPreferredNodes()}} is only respected by {{CloudSolrClient}} in
the specific case of a request that is {{true == requresCollection)}} *_AND_*
{{getApiVersion() != V2}}
This is very strange, since nothing in the docs for
{{SolrRequest.setPreferredNode()}} implies that it's only for (non V2)
collection specific requests.
It's particularly strange since using {{SolrRequest.setPreferredNode()}} seems
like the most obvious course of action for users trying to follow the
recommended instructions (of trying to send collection admin requests to a
consistent node) when disabling the overseer.
----
I see no reason why {{SolrRequest.getPreferredNodes()}} shouldn't be respected
for *ALL* types of requests?
> SolrRequest.getPreferredNodes() used very inconsistently in CloudSolrClient
> ---------------------------------------------------------------------------
>
> Key: SOLR-18434
> URL: https://issues.apache.org/jira/browse/SOLR-18434
> Project: Solr
> Issue Type: Sub-task
> Reporter: Chris M. Hostetter
> Priority: Major
>
> (See parent Jira for larger context: SOLR-18433)
> # {{SolrRequest.getPreferredNodes()}} is only respected by
> {{CloudSolrClient}} in the specific case of a request that is {{true ==
> requresCollection)}} *_AND_* {{getApiVersion() != V2}}
> # _when_ {{SolrRequest.getPreferredNodes()}} is used, it's not just used as
> a list of "preferred" nodes – it's a list of nodes that are used
> *_exclusively_* – no replicas on any other liveNodes are even included in the
> list of Endpoints given the to {{{}LBSolrClient{}}}.
> This is very strange, since:
> # There are no docs for {{SolrRequest.setPreferredNode()}} - let alone any
> impling that it's only for (non V2) collection specific requests.
> # The very _name_ of the method suggest it's a "preferrence" not an
> exclusive list
> It's particularly strange since using {{SolrRequest.setPreferredNode()}}
> seems like the most obvious course of action for users trying to follow the
> recommended instructions (of trying to send collection admin requests to a
> consistent node) when disabling the overseer.
> ----
> I seems to me that:
> * {{SolrRequest.getPreferredNodes()}} shouldn't be respected for *ALL* types
> of requests
> * either the docs of {{SolrRequest.setPreferredNode()}} should make it very
> clear that it is an *exclusive* list of nodes that the request will be sent
> to, _OR_ {{SolrRequest.getPreferredNodes()}} should only be used when
> sorting/prioritizing a larger list of endpoints
> ** which raises questions of how it should interact with
> {{ReplicaListTransformer}} ?
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]