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

Shawn Heisey commented on SOLR-4662:
------------------------------------

I too think that solr.xml should not store cores.  Auto-discovery is a nice 
thing, but it makes it more difficult to have a nice clean layout where the 
core configs and data are contained within separate subdirectories.  I suppose 
that each autodiscovered core properties file could have a relative dataDir 
that goes up one or two directories, just like my current setup, and that might 
be good enough.  I would also want to have something like a coreDirectory 
parameter, which I would set to "cores" so that the main solr.solr.home 
directory would be very clean.

One option is to have a cores.xml file for more complex layouts where the user 
wants to specify everything.  At first I thought about a cloud.xml file for 
SolrCloud properties, but once you start down the path of multiple config 
files, the explosion might never stop.

Here's what things look like inside solr.xml on my setup that's not well suited 
for SolrCloud, and a snippet of the full directory structure.  The full picture 
is more complex than this, with relative symlinks in conf directories and 
relative xinclude paths in solrconfig.xml, but this gives you the basic idea:

{noformat}
    <core loadOnStartup="true" instanceDir="cores/inc_0/" transient="false" 
name="inclive" dataDir="../../data/inc_0"/>
    <core loadOnStartup="true" instanceDir="cores/inc_1/" transient="false" 
name="incbuild" dataDir="../../data/inc_1"/>

├── cores
│   ├── inc_0
│   │   └── conf
│   ├── inc_1
│   │   └── conf
├── data
│   ├── inc_0
│   │   ├── index
│   │   └── tlog
│   ├── inc_1
│   │   ├── index
│   │   └── tlog
└── lib
{noformat}

I'm not sure there is a better location than solr.xml for zkHost, but I 
definitely think it should be in a config file.  **Requiring** -DzkHost on 
startup is a bad idea - generic startup scripts become very difficult.  Keeping 
all of the config after that in zookeeper is an idea that is growing on me, as 
long as the initial contact to zookeeper won't suffer from a low default client 
timeout before zkClientTimeout can be read.

If you give Solr (or CloudSolrServer) only one of the hosts in your zookeeper 
ensemble (perhaps localhost:port/chroot) will it automatically configure itself 
with the entire ensemble?  If not, is there a way to build this functionality 
in?

The fact that Solr does not come equipped with instructions for a standalone 
zookeeper process or a functioning standalone zookeeper is problematic in my 
opinion.  If I find some time, I can whip up a wiki page.  I do wish zkcli.sh 
was more self-contained.  I can eventually come up with a wiki page for that 
too.

                
> Finalize what we're going to do with solr.xml, auto-discovery, config sets.
> ---------------------------------------------------------------------------
>
>                 Key: SOLR-4662
>                 URL: https://issues.apache.org/jira/browse/SOLR-4662
>             Project: Solr
>          Issue Type: Improvement
>    Affects Versions: 4.3, 5.0
>            Reporter: Erick Erickson
>            Assignee: Erick Erickson
>            Priority: Blocker
>
> Spinoff from SOLR-4615, breaking it out here so we can address the changes in 
> pieces.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

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

Reply via email to