[
https://issues.apache.org/jira/browse/SOLR-3526?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15014167#comment-15014167
]
Michael Froh commented on SOLR-3526:
------------------------------------
Also worth highlighting -- the significant part of the change mostly involves
decorating ZooKeeper calls in SolrZkClient to catch KeeperExceptions and
rethrow as appropriately-typed SolrZkCheckedExceptions, I decorated those calls
by turning them into lambdas.
So, the change can't easily be backported to 5.x. More significantly, I
suppose, I changed the method signatures of about a hundred methods, which
probably prevents backporting anyway.
> Remove classfile dependency on ZooKeeper from CoreContainer
> -----------------------------------------------------------
>
> Key: SOLR-3526
> URL: https://issues.apache.org/jira/browse/SOLR-3526
> Project: Solr
> Issue Type: Wish
> Components: SolrCloud
> Affects Versions: 4.0-ALPHA
> Reporter: Michael Froh
>
> We are using Solr as a library embedded within an existing application, and
> are currently developing toward using 4.0 when it is released.
> We are currently instantiating SolrCores with null CoreDescriptors (and hence
> no CoreContainer), since we don't need SolrCloud functionality (and do not
> want to depend on ZooKeeper).
> A couple of months ago, SearchHandler was modified to try to retrieve a
> ShardHandlerFactory from the CoreContainer. I was able to work around this by
> specifying a dummy ShardHandlerFactory in the config.
> Now UpdateRequestProcessorChain is inserting a DistributedUpdateProcessor
> into my chains, again triggering a NPE when trying to dereference the
> CoreDescriptor.
> I would happily place the SolrCores in CoreContainers, except that
> CoreContainer imports and references org.apache.zookeeper.KeeperException,
> which we do not have (and do not want) in our classpath. Therefore, I get a
> ClassNotFoundException when loading the CoreContainer class.
> Ideally (IMHO), ZkController should isolate the ZooKeeper dependency, and
> simply rethrow KeeperExceptions as
> org.apache.solr.common.cloud.ZooKeeperException (or some Solr-hosted checked
> exception). Then CoreContainer could remove the offending import/references.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]