You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@lucene.apache.org by "Gregg Donovan (JIRA)" <ji...@apache.org> on 2013/02/07 14:55:12 UTC
[jira] [Created] (SOLR-4413) SolrCore#getIndexDir() contract change
between 3.6 and 4.1
Gregg Donovan created SOLR-4413:
-----------------------------------
Summary: 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.1, 4.0
Reporter: Gregg Donovan
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: dev-unsubscribe@lucene.apache.org
For additional commands, e-mail: dev-help@lucene.apache.org