[
https://issues.apache.org/jira/browse/SOLR-4413?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13580313#comment-13580313
]
Mark Miller commented on SOLR-4413:
-----------------------------------
I opened SOLR-4469 for part of this. Everything is in now. Let me know where
you run into problems.
> SolrCore#getIndexDir() contract change between 3.6 and 4.1
> ----------------------------------------------------------
>
> Key: SOLR-4413
> URL: https://issues.apache.org/jira/browse/SOLR-4413
> Project: Solr
> Issue Type: Bug
> Affects Versions: 4.0, 4.1
> Reporter: Gregg Donovan
> Assignee: Mark Miller
> Fix For: 4.2, 5.0
>
> Attachments: SOLR-4413.patch, SOLR-4413.patch
>
>
> In [SVN 1420992|http://svn.apache.org/viewvc?view=revision&revision=1420992],
> {{SolrCore#getIndexDir()}} changed it's implementation from a version that
> would reflect the value of the index property in {{index.properties}} to one
> that does not.
> In 3.6, {{SolrCore#getIndexDir()}} was:
> {code:java}
> public String getIndexDir() {
> synchronized (searcherLock) {
> if (_searcher == null)
> return dataDir + "index/";
> SolrIndexSearcher searcher = _searcher.get();
> return searcher.getIndexDir() == null ? dataDir + "index/" :
> searcher.getIndexDir();
> }
> {code}
> In 3.6, {{SolrIndexSearcher}} would be passed the value of
> {{SolrCore#getNewIndexDir()}} -- which reads index.properties -- in its
> constructor and return it when {{SolrIndexSearcher#getIndexDir()}} was called.
>
> In 4.1, {{SolrCore#getIndexDir()}} is:
> {code:java}
> public String getIndexDir() {
> return dataDir + "index/";
> }
> {code}
> Clients of {{SolrCore#getIndexDir()}} that were expecting the previous
> behavior are likely to have issues. E.g.:
> --In {{CoreAdminHandler#handleUnloadAction(SolrQueryRequest,
> SolrQueryResponse)}} if the {{deleteIndex}} flag is set to true, it calls
> {{core.getDirectoryFactory().remove(core.getIndexDir())}}. If a value other
> than {{index/}} is set in {{index.properties}}, the wrong directory will be
> deleted.
> --In {{CoreAdminHandler#getIndexSize(SolrCore)}}, the existence of
> {{SolrCore#getIndexDir()}} is checked before {{SolrCore#getNewIndexDir()}}.
> If a value other than {{index/}} is set in {{index.properties}}, this will
> return the size of the wrong directory.
--
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]