Hi, I'm new to working with [Fe/Islan]dora and I'm trying to set up Islandora 7.1.3 as per https://wiki.duraspace.org/display/ISLANDORA713/Islandora. Fedora Commons and Drupal are working, but I'm having an issue with Solr 4.2/fedoragsearch 2.6.
Following the instructions athttps://wiki.duraspace.org/display/ISLANDORA713/Installing+Solr+and+GSearch, I ran into a problem at step 14.
When I tried to update the index at [url]/fedoragsearch/rest?operation=updateIndex I got this error:
IndexReader open error indexName=FgsIndex : ; nested exception is: org.apache.lucene.store.NoSuchDirectoryException: directory 'path/to/solr/collection1/data/index' does not exist
That seemed straightforward, so I shut down tomcat and created data/index within the existing collection1 directory. Restarting tomcat and trying again gave me:
IndexReader open error indexName=FgsIndex : ; nested exception is: org.apache.lucene.index.IndexNotFoundException: no segments* file found in org.apache.lucene.store.SimpleFSDirectory@/path/to/solr/collection1/data/index lockFactory=org.apache.lucene.store.NativeFSLockFactory@68aed52c: files: []
A quick search for this error suggested if the index directory is present Solr expects it not to be empty, with the solution being to delete the directory and let Solr create it. But that gives me the previous error.
I've tried with and without the collection1/data directory present (NoSuchDirectoryException either way) and I've set the permissions on collection1 (and collection1/data, if present) to 777 while I try to work this out.
Any help greatly appreciated.
sudo service fedora stop sudo su - fedora $FEDORA_HOME/server/bin/fedora-rebuild.sh (I do both fedora and mysql rebuilds) sudo service fedora start
ERROR 2014-08-13 10:59:07,881 (MessagingClient) Messaging Exception encountered attempting to stop Messaging Client: fedoragsearch0. Exception message: The JMS connection has failed: java.io.EOFExceptioncom.yourmediashelf.fedora.client.messaging.MessagingException: The JMS connection has failed: java.io.EOFExceptionat com.yourmediashelf.fedora.client.messaging.JMSManager.close(JMSManager.java:680)at com.yourmediashelf.fedora.client.messaging.MessagingClient.stop(MessagingClient.java:320)at dk.defxws.fedoragsearch.server.UpdateListener.destroy(UpdateListener.java:127)at org.apache.catalina.core.StandardWrapper.unload(StandardWrapper.java:1436)at org.apache.catalina.core.StandardWrapper.stop(StandardWrapper.java:1784)at org.apache.catalina.core.StandardContext.stop(StandardContext.java:4872)at org.apache.catalina.core.ContainerBase.removeChild(ContainerBase.java:936)at org.apache.catalina.startup.HostConfig.undeployApps(HostConfig.java:1359)at org.apache.catalina.startup.HostConfig.stop(HostConfig.java:1330)at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:326)at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:142)at org.apache.catalina.core.ContainerBase.stop(ContainerBase.java:1098)at org.apache.catalina.core.ContainerBase.stop(ContainerBase.java:1110)at org.apache.catalina.core.StandardEngine.stop(StandardEngine.java:468)at org.apache.catalina.core.StandardService.stop(StandardService.java:604)at org.apache.catalina.core.StandardServer.stop(StandardServer.java:788)at org.apache.catalina.startup.Catalina.stop(Catalina.java:662)at org.apache.catalina.startup.Catalina.start(Catalina.java:629)at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)at java.lang.reflect.Method.invoke(Method.java:616)at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:289)at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:414)Caused by: org.apache.activemq.ConnectionFailedException: The JMS connection has failed: java.io.EOFExceptionat org.apache.activemq.ActiveMQConnection.checkClosedOrFailed(ActiveMQConnection.java:1362)at org.apache.activemq.ActiveMQConnection.stop(ActiveMQConnection.java:545)at com.yourmediashelf.fedora.client.messaging.JMSManager.close(JMSManager.java:674)... 23 moreCaused by: java.io.EOFExceptionat java.io.DataInputStream.readInt(DataInputStream.java:392)at org.apache.activemq.openwire.OpenWireFormat.unmarshal(OpenWireFormat.java:269)at org.apache.activemq.transport.tcp.TcpTransport.readCommand(TcpTransport.java:227)at org.apache.activemq.transport.tcp.TcpTransport.doRun(TcpTransport.java:219)at org.apache.activemq.transport.tcp.TcpTransport.run(TcpTransport.java:202)at java.lang.Thread.run(Thread.java:679)
<Context docBase=
"/opt/solr/apache-solr-1.4.1.war"
debug=
"0"
crossContext=
"true"
>
<Environment name=
"solr/home"
type=
"java.lang.String"
value=
"/usr/local/fedora/gsearch_solr/solr"
override=
"true"
/>
</Context>
dk.defxws.fedoragsearch.server.errors.GenericSearchException: Wed Aug 13 16:22:11 BST 2014 IndexReader open error indexName=FgsIndex :
; nested exception is:
org.apache.lucene.index.IndexNotFoundException: no segments* file found in org.apache.lucene.store.SimpleFSDirectory@/home/islandora/fedora/solr/collection1/data/index lockFactory=org.apache.lucene.store.NativeFSLockFactory@7df4591e: files: []
at dk.defxws.fgssolr.OperationsImpl.getIndexReaderAndSearcher(OperationsImpl.java:719)
at dk.defxws.fgssolr.OperationsImpl.updateIndex(OperationsImpl.java:267)
at dk.defxws.fedoragsearch.server.GenericOperationsImpl.updateIndex(GenericOperationsImpl.java:556)
at dk.defxws.fedoragsearch.server.RESTImpl.updateIndex(RESTImpl.java:311)
at dk.defxws.fedoragsearch.server.RESTImpl.doGet(RESTImpl.java:147)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.fcrepo.server.security.servletfilters.FilterSetup.doFilter(FilterSetup.java:247)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.fcrepo.server.security.servletfilters.FilterSetup.doFilter(FilterSetup.java:247)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.fcrepo.server.security.servletfilters.FilterSetup.doFilter(FilterSetup.java:247)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.fcrepo.server.security.servletfilters.FilterSetup.doFilter(FilterSetup.java:247)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.fcrepo.server.security.servletfilters.FilterSetup.doFilter(FilterSetup.java:247)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:859)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:602)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
at java.lang.Thread.run(Thread.java:679)
Caused by: org.apache.lucene.index.IndexNotFoundException: no segments* file found in org.apache.lucene.store.SimpleFSDirectory@/home/islandora/fedora/solr/collection1/data/index lockFactory=org.apache.lucene.store.NativeFSLockFactory@7df4591e: files: []
at org.apache.lucene.index.SegmentInfos$FindSegmentsFile.run(SegmentInfos.java:741)
at org.apache.lucene.index.StandardDirectoryReader.open(StandardDirectoryReader.java:52)
at org.apache.lucene.index.DirectoryReader.open(DirectoryReader.java:65)
at dk.defxws.fgssolr.OperationsImpl.getIndexReaderAndSearcher(OperationsImpl.java:717)
... 33 more
dk.defxws.fedoragsearch.server.errors.GenericSearchException: Wed Aug 13 16:23:45 BST 2014 IndexReader open error indexName=FgsIndex :
; nested exception is:
org.apache.lucene.store.NoSuchDirectoryException: directory '/home/islandora/fedora/solr/collection1/data/index' does not exist
at dk.defxws.fgssolr.OperationsImpl.getIndexReaderAndSearcher(OperationsImpl.java:719)
at dk.defxws.fgssolr.OperationsImpl.updateIndex(OperationsImpl.java:267)
at dk.defxws.fedoragsearch.server.GenericOperationsImpl.updateIndex(GenericOperationsImpl.java:556)
at dk.defxws.fedoragsearch.server.RESTImpl.updateIndex(RESTImpl.java:311)
at dk.defxws.fedoragsearch.server.RESTImpl.doGet(RESTImpl.java:147)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.fcrepo.server.security.servletfilters.FilterSetup.doFilter(FilterSetup.java:247)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.fcrepo.server.security.servletfilters.FilterSetup.doFilter(FilterSetup.java:247)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.fcrepo.server.security.servletfilters.FilterSetup.doFilter(FilterSetup.java:247)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.fcrepo.server.security.servletfilters.FilterSetup.doFilter(FilterSetup.java:247)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.fcrepo.server.security.servletfilters.FilterSetup.doFilter(FilterSetup.java:247)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:859)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:602)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
at java.lang.Thread.run(Thread.java:679)
Caused by: org.apache.lucene.store.NoSuchDirectoryException: directory '/home/islandora/fedora/solr/collection1/data/index' does not exist
at org.apache.lucene.store.FSDirectory.listAll(FSDirectory.java:217)
at org.apache.lucene.store.FSDirectory.listAll(FSDirectory.java:241)
at org.apache.lucene.index.SegmentInfos$FindSegmentsFile.run(SegmentInfos.java:679)
at org.apache.lucene.index.StandardDirectoryReader.open(StandardDirectoryReader.java:52)
at org.apache.lucene.index.DirectoryReader.open(DirectoryReader.java:65)
at dk.defxws.fgssolr.OperationsImpl.getIndexReaderAndSearcher(OperationsImpl.java:717)
... 33 more
<?xml version="1.0" encoding="UTF-8"?>
<Context docBase="/home/islandora/fedora/tomcat/webapps/solr.war" debug="0" crossContext="true">
<Environment name="solr/home" type="java.lang.String" value="/home/islandora/fedora/solr" override="true" />
</Context>
ERROR 2014-08-13 16:34:16,215 (MessagingClient) Messaging Exception encountered attempting to stop Messaging Client: fedoragsearch0. Exception message: The JMS connection has failed: java.io.EOFException
...
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.<span
"Remove the index directory... it shouldn't be there if there is no index."