[ https://issues.apache.org/jira/browse/JCR-1163?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Marcel Reutegger resolved JCR-1163. ----------------------------------- Resolution: Won't Fix Resolving Won't Fix. Jackrabbit 1.4 will use native FileLocks as implemented in NativeFSLockFactory, available in Lucene 2.2. See issue JCR-863. > Lucene indexing error > --------------------- > > Key: JCR-1163 > URL: https://issues.apache.org/jira/browse/JCR-1163 > Project: Jackrabbit > Issue Type: Bug > Components: indexing > Affects Versions: 1.2.1, 1.2.2, 1.2.3, 1.3, 1.3.1 > Environment: Java version : 1.5 > OS : Win XP > File System : NTFS > File System that is configured for Jackrabbit: LocalFileSystem > Operation : session.save() > Multiple session : NO > Multiple threads : NO > Multiple workspaces : NO > Versioning : NO > Reporter: Sridhar > > I have been facing this one particular problem in Jackrabbit. There are > times when I do a save() after a huge import (a few of my colleagues are > facing this even if it's a small data import), a Lucene error is thrown: > Caused by: java.io.IOException: Access is denied > at java.io.WinNTFileSystem.createFileExclusively (Native Method) > at java.io.File.createNewFile(File.java:850) > This error comes once in a while, not all the time, which is even more > problematic, as finding the bug becomes tougher. > Another thing I tried was to delete the contents of the index folder in the > workspace, hoping that re-indexing that Jackrabbit might create the indexes > properly. But that is again a hit-or-miss situation. > This is the stack I get. > ERROR STACK: > ERROR org.apache.jackrabbit.core.RepositoryImpl - Unable to initialize > workspace 'test_WS' > javax.jcr.RepositoryException: Access is denied: Access is denied: Access is > denied > at > org.apache.jackrabbit.core.SearchManager.initializeQueryHandler(SearchManager.java:476) > at org.apache.jackrabbit.core.SearchManager > .<init>(SearchManager.java:231) > at > org.apache.jackrabbit.core.RepositoryImpl$WorkspaceInfo.getSearchManager(RepositoryImpl.java:1643) > at > org.apache.jackrabbit.core.RepositoryImpl.initWorkspace(RepositoryImpl.java > :633) > at > org.apache.jackrabbit.core.RepositoryImpl.getWorkspaceInfo(RepositoryImpl.java:746) > at > org.apache.jackrabbit.core.RepositoryImpl.login(RepositoryImpl.java:1232) > at org.apache.jackrabbit.core.jndi.BindableRepository.login > (BindableRepository.java:185) > at > com.taxila.editor.config.CoreRepoOps.logintoRepo(CoreRepoOps.java:2960) > at > com.taxila.editor.user.action.LoginAction.validate(LoginAction.java:128) > at sun.reflect.NativeMethodAccessorImpl.invoke0 (Native Method) > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) > at java.lang.reflect.Method.invoke (Method.java:585) > at > org.apache.struts.actions.DispatchAction.dispatchMethod(DispatchAction.java:280) > at > org.apache.struts.actions.DispatchAction.execute(DispatchAction.java:220) > at org.apache.struts.action.RequestProcessor.processActionPerform > (RequestProcessor.java:446) > at > org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:266) > at > org.apache.struts.action.ActionServlet.process(ActionServlet.java:1292) > at org.apache.struts.action.ActionServlet.doPost > (ActionServlet.java:510) > at javax.servlet.http.HttpServlet.service(HttpServlet.java:709) > at javax.servlet.http.HttpServlet.service(HttpServlet.java:802) > at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter > (ApplicationFilterChain.java:252) > at > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) > at > org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java > :213) > at > org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178) > at > org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:432) > at org.apache.catalina.core.StandardHostValve.invoke > (StandardHostValve.java:126) > at > org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105) > at > org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107) > at > org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148) > at > org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869) > at > org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection > (Http11BaseProtocol.java:664) > at > org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527) > at > org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java > :80) > at > org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684) > at java.lang.Thread.run(Thread.java:595) > Caused by: java.io.IOException: Access is denied > at java.io.WinNTFileSystem.createFileExclusively (Native Method) > at java.io.File.createNewFile(File.java:850) > at > org.apache.jackrabbit.core.query.lucene.FSDirectory$1.obtain(FSDirectory.java:119) > at org.apache.lucene.store.Lock.obtain(Lock.java :51) > at org.apache.lucene.store.Lock$With.run(Lock.java:98) > at org.apache.lucene.index.IndexReader.open(IndexReader.java:141) > at org.apache.lucene.index.IndexReader.open(IndexReader.java:136) > at > org.apache.jackrabbit.core.query.lucene.AbstractIndex.getIndexReader(AbstractIndex.java:178) > at > org.apache.jackrabbit.core.query.lucene.PersistentIndex.getNumDocuments(PersistentIndex.java:222) > at > org.apache.jackrabbit.core.query.lucene.MultiIndex$AddIndex.execute(MultiIndex.java:1343) > at > org.apache.jackrabbit.core.query.lucene.MultiIndex.executeAndLog(MultiIndex.java:858) > at > org.apache.jackrabbit.core.query.lucene.MultiIndex.commitVolatileIndex > (MultiIndex.java:912) > at > org.apache.jackrabbit.core.query.lucene.MultiIndex.checkVolatileCommit(MultiIndex.java:883) > at > org.apache.jackrabbit.core.query.lucene.MultiIndex.createIndex(MultiIndex.java:940) > at > org.apache.jackrabbit.core.query.lucene.MultiIndex.createIndex(MultiIndex.java:945) > at > org.apache.jackrabbit.core.query.lucene.MultiIndex.createIndex(MultiIndex.java:945) > at org.apache.jackrabbit.core.query.lucene.MultiIndex > .<init>(MultiIndex.java:308) > at > org.apache.jackrabbit.core.query.lucene.SearchIndex.doInit(SearchIndex.java:295) > at > org.apache.jackrabbit.core.query.AbstractQueryHandler.init(AbstractQueryHandler.java > :44) > at > org.apache.jackrabbit.core.SearchManager.initializeQueryHandler(SearchManager.java:474) > ... 35 more > java.io.IOException: Access is denied > at java.io.WinNTFileSystem.createFileExclusively (Native Method) > at java.io.File.createNewFile(File.java:850) > at > org.apache.jackrabbit.core.query.lucene.FSDirectory$1.obtain(FSDirectory.java:119) > at org.apache.lucene.store.Lock.obtain(Lock.java :51) > at org.apache.lucene.store.Lock$With.run(Lock.java:98) > at org.apache.lucene.index.IndexReader.open(IndexReader.java:141) > at org.apache.lucene.index.IndexReader.open(IndexReader.java:136) > at > org.apache.jackrabbit.core.query.lucene.AbstractIndex.getIndexReader(AbstractIndex.java:178) > at > org.apache.jackrabbit.core.query.lucene.PersistentIndex.getNumDocuments(PersistentIndex.java:222) > at > org.apache.jackrabbit.core.query.lucene.MultiIndex$AddIndex.execute(MultiIndex.java:1343) > at > org.apache.jackrabbit.core.query.lucene.MultiIndex.executeAndLog(MultiIndex.java:858) > at > org.apache.jackrabbit.core.query.lucene.MultiIndex.commitVolatileIndex > (MultiIndex.java:912) > at > org.apache.jackrabbit.core.query.lucene.MultiIndex.checkVolatileCommit(MultiIndex.java:883) > at > org.apache.jackrabbit.core.query.lucene.MultiIndex.createIndex(MultiIndex.java:940) > at > org.apache.jackrabbit.core.query.lucene.MultiIndex.createIndex(MultiIndex.java:945) > at > org.apache.jackrabbit.core.query.lucene.MultiIndex.createIndex(MultiIndex.java:945) > at org.apache.jackrabbit.core.query.lucene.MultiIndex > .<init>(MultiIndex.java:308) > at > org.apache.jackrabbit.core.query.lucene.SearchIndex.doInit(SearchIndex.java:295) > at > org.apache.jackrabbit.core.query.AbstractQueryHandler.init(AbstractQueryHandler.java > :44) > at > org.apache.jackrabbit.core.SearchManager.initializeQueryHandler(SearchManager.java:474) > at > org.apache.jackrabbit.core.SearchManager.<init>(SearchManager.java:231) > at > org.apache.jackrabbit.core.RepositoryImpl$WorkspaceInfo.getSearchManager > (RepositoryImpl.java:1643) > at > org.apache.jackrabbit.core.RepositoryImpl.initWorkspace(RepositoryImpl.java:633) > at > org.apache.jackrabbit.core.RepositoryImpl.getWorkspaceInfo(RepositoryImpl.java:746) > at > org.apache.jackrabbit.core.RepositoryImpl.login(RepositoryImpl.java:1232) > at > org.apache.jackrabbit.core.jndi.BindableRepository.login(BindableRepository.java:185) > at com.taxila.editor.config.CoreRepoOps.logintoRepo > (CoreRepoOps.java:2960) > at > com.taxila.editor.user.action.LoginAction.validate(LoginAction.java:128) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at sun.reflect.NativeMethodAccessorImpl.invoke > (NativeMethodAccessorImpl.java:39) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) > at java.lang.reflect.Method.invoke(Method.java:585) > at org.apache.struts.actions.DispatchAction.dispatchMethod > (DispatchAction.java:280) > at > org.apache.struts.actions.DispatchAction.execute(DispatchAction.java:220) > at > org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:446) > at > org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:266) > at > org.apache.struts.action.ActionServlet.process(ActionServlet.java:1292) > at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java > :510) > at javax.servlet.http.HttpServlet.service(HttpServlet.java:709) > at javax.servlet.http.HttpServlet.service(HttpServlet.java:802) > at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter > (ApplicationFilterChain.java:252) > at > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) > at > org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java > :213) > at > org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178) > at > org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:432) > at org.apache.catalina.core.StandardHostValve.invoke > (StandardHostValve.java:126) > at > org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105) > at > org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107) > at > org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148) > at > org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869) > at > org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection > (Http11BaseProtocol.java:664) > at > org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527) > at > org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java > :80) > at > org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684) > at java.lang.Thread.run(Thread.java:595) > 70048 [http-8080-Processor24] ERROR com.taxila.editor.config.CoreRepoOps - > Workspace test_WS does not exist -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.