Description
If you launch Solr for the first time in cloud mode using a ZooKeeper connection string that includes a chroot leads to the following initialization error:
ERROR - 2015-06-05 17:15:50.410; [ ] org.apache.solr.common.SolrException; null:org.apache.solr.common.cloud.ZooKeeperException: A chroot was specified in ZkHost but the znode doesn't exist. localhost:2181/lan
at org.apache.solr.core.ZkContainer.initZooKeeper(ZkContainer.java:113)
at org.apache.solr.core.CoreContainer.load(CoreContainer.java:339)
at org.apache.solr.servlet.SolrDispatchFilter.createCoreContainer(SolrDispatchFilter.java:140)
at org.apache.solr.servlet.SolrDispatchFilter.init(SolrDispatchFilter.java:110)
at org.eclipse.jetty.servlet.FilterHolder.initialize(FilterHolder.java:138)
at org.eclipse.jetty.servlet.ServletHandler.initialize(ServletHandler.java:852)
at org.eclipse.jetty.servlet.ServletContextHandler.startContext(ServletContextHandler.java:298)
at org.eclipse.jetty.webapp.WebAppContext.startWebapp(WebAppContext.java:1349)
at org.eclipse.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1342)
at org.eclipse.jetty.server.handler.ContextHandler.doStart(ContextHandler.java:741)
at org.eclipse.jetty.webapp.WebAppContext.doStart(WebAppContext.java:505)
The work-around for this is to use the scripts/cloud-scripts/zkcli.sh script to create the chroot znode (bootstrap action does this).
I'm wondering if we shouldn't just create the znode if it doesn't exist? Or is that some violation of using a chroot?
Attachments
Attachments
Issue Links
- is related to
-
SOLR-8649 Fail fast on wrong ZK chroot
- Open
- links to