You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@lucene.apache.org by "Shawn Heisey (JIRA)" <ji...@apache.org> on 2015/02/19 21:18:11 UTC

[jira] [Commented] (SOLR-7127) Add method to CloudSolrClient to create per-collection clients

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

Shawn Heisey commented on SOLR-7127:
------------------------------------

This is a really interesting idea, especially if the child clients have very low overhead.  I will review the patch when I have a few moments of personal time ... I hope it's something I can understand.

It actually is currently possible to have fully thread-safe CloudSolrClient usage with multiple collections, but the responsibility of choosing a collection is on the request instead of the client.  This is reasonably straightforward for queries (just add a collection parameter to the query object), but the incantations required for updates and other types of requests are not at all intuitive.


> Add method to CloudSolrClient to create per-collection clients
> --------------------------------------------------------------
>
>                 Key: SOLR-7127
>                 URL: https://issues.apache.org/jira/browse/SOLR-7127
>             Project: Solr
>          Issue Type: Improvement
>            Reporter: Alan Woodward
>            Assignee: Alan Woodward
>            Priority: Minor
>         Attachments: SOLR-7127.patch
>
>
> CloudSolrClient isn't thread-safe if you're making requests to multiple collections, because defaultCollection is mutable.  This can be a pain if you're trying to index into multiple collections from a single queue of documents.
> This issue adds a .getCollectionClient(String) method to CloudSolrClient that returns a child client directed at that collection.  Under the hood it's another CloudSolrClient sharing it's resources with the parent client, but with a separate default collection set.  The method returns a SolrClient, however, so you can't then change the collection unless you explicitly cast it.
> Sort of related to what I wanted to do on SOLR-6894, but this is more focussed.



--
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