[
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: [email protected]
For additional commands, e-mail: [email protected]