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

Henri Biestro commented on SOLR-350:
------------------------------------

We need a way to define a global data root without having to define a system 
env variable; can't we at least reintroduce the dataDir as a multicore 
attribute?
The previous patch version went too far and was ignoring the solrconfig.xml 
dataDir specification, but having no way to describe where all data go easily 
is really too inconvenient.
Can't we find something acceptable in between ?
Strawman solution would be, if dataDir is *not* specified in solrconfig.xml, 
use the previous patch code ?
Hopefully more acceptable, only provide a minimum set of variables with no 
possibility to define any for now ? The env would only contain 
'solr.multicore.{home,data}' and for each core,'solr.multicore.core.instance' 
(I'm reluctant to expose 'sol.multicore.core.name', explanation follows...)

This would not preclude extending variables later and would not delay solr-350 
by much now.

We used {{<dataDir>${solr.data}/corename/</dataDir>}} to illustrate the 
variable solution but I grow feeling uneasy seeing the core *name* as a 
variable part of a path (explicit or implicit): if we issue a SWAP command, how 
do we end up in a proper state when we stop/start the container without 
swapping the directory contents as well ?

My rationale is that the *instanceDir* is really what physically identifies a 
core in a persistent manner wrt SWAP/stop/start; when we specify a data root, 
the data directory should somehow depend on the instanceDir as well.
For instance, with {{<core name="books" instanceDir="books,0'.../>}} and 
{{<core name="books-dev" instanceDir="books,1".../>}} ; even if both use the 
same data root _'/solr/data'_, the 'books' core will use 
_'/solr/data/books,0/'_ as dataDir and 'books-dev' will use 
_'/solr/data/books,1'_.
When we swap('books', 'books-dev') , everything is still ok; 'books' now refers 
to_'/solr/data/books,1'_ and books-dev refers to _'/solr/data/books,0/'_ . If 
we stop/start the container, since nothing physically persistent depended on 
the name, variable substitution (or implicit expansion) can not interfere.
If we are using the core *name* to build data directories, issuing swap is 
likely to break something...

Please correct me if I'm deeply misunderstanding something...


> Manage Multiple SolrCores
> -------------------------
>
>                 Key: SOLR-350
>                 URL: https://issues.apache.org/jira/browse/SOLR-350
>             Project: Solr
>          Issue Type: Improvement
>    Affects Versions: 1.3
>            Reporter: Ryan McKinley
>         Attachments: SOLR-350-MultiCore.patch, SOLR-350-MultiCore.patch, 
> SOLR-350-MultiCore.patch, SOLR-350-Naming.patch, SOLR-350-Naming.patch, 
> solr-350.patch, solr-350.patch, solr-350.patch, solr-350.patch, 
> solr-350.patch, solr-350.patch, solr-350.patch, solr-350.patch, solr-350.patch
>
>
> In SOLR-215, we enabled support for more then one SolrCore - but there is no 
> way to use them yet.
> We need to make some interface to manage, register, modify avaliable SolrCores

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to