I've set up solrconfig.xml to create a snap shot of an index after doing
a optimize, but the snap shot cannot be created because of permission
issues. I've set permissions to the bin, data and log directories to
read/write/execute for all users. Even with these settings I cannot seem
to be able to run snapshooter on the postOptimize event. Any ideas?
Could it be a java permissions issue? Thanks.
Sunny
Config settings:
<listener event="postOptimize" class="solr.RunExecutableListener">
<str name="exe">snapshooter</str>
<str name="dir">/search/replication_test/0/index/solr/bin</str>
<bool name="wait">true</bool>
</listener>
Error:
Dec 17, 2007 7:45:19 AM org.apache.solr.core.RunExecutableListener exec
FINE: About to exec snapshooter
Dec 17, 2007 7:45:19 AM org.apache.solr.core.SolrException log
SEVERE: java.io.IOException: Cannot run program "snapshooter" (in
directory "/search/replication_test/0/index/solr/bin"):
java.io.IOException: error=13, Permission denied
at java.lang.ProcessBuilder.start(ProcessBuilder.java:459)
at java.lang.Runtime.exec(Runtime.java:593)
at
org.apache.solr.core.RunExecutableListener.exec(RunExecutableListener.ja
va:70)
at
org.apache.solr.core.RunExecutableListener.postCommit(RunExecutableListe
ner.java:97)
at
org.apache.solr.update.UpdateHandler.callPostOptimizeCallbacks(UpdateHan
dler.java:105)
at
org.apache.solr.update.DirectUpdateHandler2.commit(DirectUpdateHandler2.
java:516)
at
org.apache.solr.handler.XmlUpdateRequestHandler.update(XmlUpdateRequestH
andler.java:214)
at
org.apache.solr.handler.XmlUpdateRequestHandler.handleRequestBody(XmlUpd
ateRequestHandler.java:84)
at
org.apache.solr.handler.RequestHandlerBase.handleRequest(RequestHandlerB
ase.java:77)
at org.apache.solr.core.SolrCore.execute(SolrCore.java:658)
at
org.apache.solr.servlet.SolrDispatchFilter.execute(SolrDispatchFilter.ja
va:191)
at
org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.j
ava:159)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applica
tionFilterChain.java:235)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilt
erChain.java:206)
at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValv
e.java:233)
at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValv
e.java:175)
at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java
:128)
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:2
63)
at
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:84
4)
at
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(
Http11Protocol.java:584)
at
org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
at java.lang.Thread.run(Thread.java:619)
Caused by: java.io.IOException: java.io.IOException: error=13,
Permission denied
at java.lang.UNIXProcess.<init>(UNIXProcess.java:148)
at java.lang.ProcessImpl.start(ProcessImpl.java:65)
at java.lang.ProcessBuilder.start(ProcessBuilder.java:452)
... 23 more