You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@jackrabbit.apache.org by "Thomas Mueller (JIRA)" <ji...@apache.org> on 2007/10/08 08:29:50 UTC
[jira] Commented: (JCR-1163) Lucene indexing error
[ https://issues.apache.org/jira/browse/JCR-1163?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12533043 ]
Thomas Mueller commented on JCR-1163:
-------------------------------------
I'm not sure if this is the problem, but createNewFile is problematic
on some operating system. In my machine (Windows XP) I get this
exception sometimes when doing this:
import java.io.*;
public class FileCreate {
public static void main(String[] args) throws Exception {
Runnable r = new Runnable() {
public void run() {
File f = new File("/temp/test.txt");
while (true) {
try {
f.createNewFile();
} catch (IOException e) {
e.printStackTrace();
}
f.delete();
}
}
};
new Thread(r).start();
new Thread(r).start();
}
}
I also get the exception when running two processes with one thread each.
> 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.