You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@lucene.apache.org by "Sachin Goyal (JIRA)" <ji...@apache.org> on 2015/06/09 03:55:02 UTC

[jira] [Commented] (SOLR-6832) Queries be served locally rather than being forwarded to another replica

    [ https://issues.apache.org/jira/browse/SOLR-6832?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14578181#comment-14578181 ] 

Sachin Goyal commented on SOLR-6832:
------------------------------------

https://issues.apache.org/jira/browse/SOLR-7121 is a patch to address the other part of this problem.
It helps nodes become aware of their slowness and tell the ZK that they should be moved out of the network for a while.
When their health has recovered, the nodes automatically request the ZK to be joined back in the cluster.

These two patches have resulted in making our cluster stable, though we have yet to quantify by how much (Quantification is not really a priority right now given that we will need to compare the cluster with an un-patched cluster and then put load on them to bring them down etc.)

> Queries be served locally rather than being forwarded to another replica
> ------------------------------------------------------------------------
>
>                 Key: SOLR-6832
>                 URL: https://issues.apache.org/jira/browse/SOLR-6832
>             Project: Solr
>          Issue Type: Bug
>          Components: SolrCloud
>    Affects Versions: 4.10.2
>            Reporter: Sachin Goyal
>            Assignee: Timothy Potter
>             Fix For: Trunk, 5.1
>
>         Attachments: SOLR-6832.patch, SOLR-6832.patch, SOLR-6832.patch, SOLR-6832.patch
>
>
> Currently, I see that code flow for a query in SolrCloud is as follows:
> For distributed query:
> SolrCore -> SearchHandler.handleRequestBody() -> HttpShardHandler.submit()
> For non-distributed query:
> SolrCore -> SearchHandler.handleRequestBody() -> QueryComponent.process()
> \\
> \\
> \\
> For a distributed query, the request is always sent to all the shards even if the originating SolrCore (handling the original distributed query) is a replica of one of the shards.
> If the original Solr-Core can check itself before sending http requests for any shard, we can probably save some network hopping and gain some performance.
> \\
> \\
> We can change SearchHandler.handleRequestBody() or HttpShardHandler.submit() to fix this behavior (most likely the former and not the latter).



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@lucene.apache.org
For additional commands, e-mail: dev-help@lucene.apache.org