我试图按照https://wiki.duraspace.org/display/ISLANDORA713/Islandora设置Islandora 7.1.3。 Fedora Commons和Drupal正在工作,但我遇到了Solr 4.2 / fedoragsearch 2.6的问题。
按照https://wiki.duraspace.org/display/ISLANDORA713/Installing+Solr+and+GSearch的说明,我在第14步遇到了问题。
当我尝试在[url] / fedoragsearch / rest更新索引时:operation = updateIndex我收到此错误:
IndexReader打开错误indexName = FgsIndex :;嵌套异常是:org.apache.lucene.store.NoSuchDirectoryException:directory' path / to / solr / collection1 / data / index'不存在
这似乎很简单,所以我关闭了tomcat并在现有的collection1目录中创建了数据/索引。重新启动tomcat并再次尝试给了我:
IndexReader打开错误indexName = FgsIndex :;嵌套异常是:org.apache.lucene.index.IndexNotFoundException:在org.apache.lucene.store.SimpleFSDirectory@/path/to/solr/collection1/data/index lockFactory = org.apache.lucene中找不到segments *文件。 store.NativeFSLockFactory@68aed52c:files:[]
快速搜索此错误表明索引目录是否存在Solr希望它不为空,解决方案是删除目录并让Solr创建它。但这给了我以前的错误。
我已尝试使用和不使用collection1 / data目录(无论是NoSuchDirectoryException),并且我在尝试工作时将collection1(和collection1 / data,如果存在)的权限设置为777这个。
非常感谢任何帮助。
答案 0 :(得分:1)
OP似乎已在Islandora Google Group上解决了这个问题。
它似乎是由solrconfig.xml DataDir
与gsearch寻找索引的位置不匹配引起的:
solrconfig.xml在solr / data中指定了dataDir。 gsearch正在寻找solr / collection1 / data。
Mark Jordan已在Islandora指南上发布了类似的评论:https://wiki.duraspace.org/display/ISLANDORA713/Installing+Solr+and+GSearch
解决方法是修改$ FEDORA_HOME / solr / collection1 / conf / solrconfig.xml:
<dataDir>${solr.data.dir:}</dataDir>
应该是
<dataDir>${solr.data.dir:./solr/data}</dataDir>
答案 1 :(得分:-1)
当您尝试使用/列出不存在的目录时,基本上会抛出异常NoSuchDirectoryException,因此您必须先创建它。
异常IndexNotFoundException表示目录中未找到索引。可能是因为目录为空,但也可能表示索引损坏。
因此,在这种情况下,您应该删除数据目录,并在启动时重新创建。