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

Shawn Heisey commented on SOLR-9014:
------------------------------------

As you read this, remember that I have never looked at a single line of any of 
zookeeper code in Solr, so I'm a strictly 30,000-foot-view guy with only a 
little bit of practical experience with SolrCloud.  I do have some opinions 
about the things I *do* understand.

bq. bootstrapping mode may need to go away, ZkController.createCollectionZkNode 
must be purged, ZkCli's linkConfig command would no longer operate if the 
collection doesn't exist (do people even use it that way?)

I have never liked bootstrapping mode.  I know that we need a way for somebody 
to convert a non-cloud install to a cloud install, but bootstrapping has always 
felt like an extreme hack, producing strange collections that I would want to 
remove from production as quickly as possible.  Perhaps bootstrapping can be 
moved to the scripting layer... but I'm sure a lot of thought will need to go 
into it.

I can't say anything about ZkController.createCollectionZkNode, because I don't 
know the code.

Quite some time ago, I was really surprised to learn that linkconfig would work 
on a collection that didn't even exist yet.  Although I can see the appeal, I 
believe that we should not have multiple ways to achieve the same result.  
Unless a config with the same name as the collection happens to exist, 
collection.configName should be a required parameter on the CREATE action of 
the Collections API.

> Deprecate and reduce usage of ClusterState methods which may make calls to ZK 
> via the lazy collection reference
> ---------------------------------------------------------------------------------------------------------------
>
>                 Key: SOLR-9014
>                 URL: https://issues.apache.org/jira/browse/SOLR-9014
>             Project: Solr
>          Issue Type: Improvement
>          Components: SolrCloud
>            Reporter: Shalin Shekhar Mangar
>             Fix For: 6.1, master
>
>         Attachments: SOLR-9014.patch
>
>
> ClusterState has a bunch of methods such as getSlice and getReplica which 
> internally call getCollectionOrNull that ends up making a call to ZK via the 
> lazy collection reference. Many classes use these methods even though a 
> DocCollection object is available. In such cases, multiple redundant calls to 
> ZooKeeper can happen if the collection is not watched locally. This is 
> especially true for Overseer classes which operate on all collections.
> We should audit all usages of these methods and replace them with calls to 
> appropriate DocCollection methods.



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

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to