Jeff: would you mind opening a Jira issue about this? at a minum there should be a better error message -- but i think we could probably also improve the way the file is updated to not require directory write perms.
: Date: Thu, 20 Nov 2008 08:59:26 -0800 : From: Jeff Newburn <[EMAIL PROTECTED]> : Reply-To: solr-user@lucene.apache.org : To: solr-user@lucene.apache.org : Subject: Re: Solr Core Admin : : Ok just FYI solr replaces the file instead of editing. This means that the : webserver needs permissions in the directory to delete and create the : solr.xml file. Once I fixed that it no longer gave IOException errors. : : : On 11/20/08 8:29 AM, "Jeff Newburn" <[EMAIL PROTECTED]> wrote: : : > I am trying to use the api for the solr cores. Reload works great but when : > I try to UNLOAD I get a massive exception in IOException. It seems to : > unload the module but doesn¹t remove it from the configuration file. The : > solr.xml file is full read and write but still errors. Any ideas? : > : > Solr.xml : > solr persistent="true"> : > : > <!-- : > adminPath: RequestHandler path to manage cores. : > If 'null' (or absent), cores will not be manageable via REST : > --> : > <cores adminPath="/admin/cores"> : > <core name="zeta-main" instanceDir="zeta-main" /> : > <core name="zeta-stub" instanceDir="zeta-stub" /> : > </cores> : > </solr> : > : > Exception: : > HTTP Status 500 - java.io.IOException: Permission denied : > org.apache.solr.common.SolrException: java.io.IOException: Permission denied : > at org.apache.solr.core.CoreContainer.persistFile(CoreContainer.java:585) at : > org.apache.solr.core.CoreContainer.persist(CoreContainer.java:554) at : > org.apache.solr.handler.admin.CoreAdminHandler.handleRequestBody(CoreAdminHa : > ndler.java:200) at : > org.apache.solr.handler.RequestHandlerBase.handleRequest(RequestHandlerBase. : > java:131) at org.apache.solr.core.SolrCore.execute(SolrCore.java:1287) at : > org.apache.solr.servlet.SolrDispatchFilter.execute(SolrDispatchFilter.java:3 : > 03) at : > org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java: : > 232) at : > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Unknown : > Source) at org.apache.catalina.core.ApplicationFilterChain.doFilter(Unknown : > Source) at org.apache.catalina.core.StandardWrapperValve.invoke(Unknown : > Source) at org.apache.catalina.core.StandardContextValve.invoke(Unknown : > Source) at org.apache.catalina.core.StandardHostValve.invoke(Unknown Source) : > at org.apache.catalina.valves.ErrorReportValve.invoke(Unknown Source) at : > org.apache.catalina.core.StandardEngineValve.invoke(Unknown Source) at : > org.apache.catalina.connector.CoyoteAdapter.service(Unknown Source) at : > org.apache.coyote.http11.Http11Processor.process(Unknown Source) at : > org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Unkn : > own Source) at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(Unknown : > Source) at java.lang.Thread.run(Thread.java:619) Caused by: : > java.io.IOException: Permission denied at : > java.io.UnixFileSystem.createFileExclusively(Native Method) at : > java.io.File.checkAndCreate(File.java:1704) at : > java.io.File.createTempFile(File.java:1793) at : > org.apache.solr.core.CoreContainer.persistFile(CoreContainer.java:565) ... : > 18 more : -Hoss