On 7/27/05, Richard Osbaldeston <[EMAIL PROTECTED]> wrote: > Stefan, Its not a disk-space issue - at least I hope not df tells me > I've still got 11gigs free.
that was just a wild guess, i didn't really expect that it would be that easy ;) > > Was hoping to get more debugging done on this today, but other things > cropped up.. Did manage to > update my copy of jackrabbit (looked to be several fixes) and retried > running the population script on > Windows XP.. which has also just failed, after an hour+ (typical!). > > Almost looked like JackRabbit suddenly restated itself mid-way through > populating the repository? or is that just a quirk of the exception > ordering? The "Found uncommitted redo log. Applying changes now..." and > the "java.lang.ArrayIndexOutOfBoundsException: 0" from lucene seemed > suspicious, especially as I'd thought indexing would be disabled by > removing the indexing configuration from the repository.xml ..maybe > thats the difference? Need to do more digging.. ok, the only thing that i can tell from the stack trace is that lucene's index seems to be corrupt, probably due to an abnormal process termination. if you find the time to, try the steps i suggested in my previous mail: - cqfs & ObjectPersistenceManager to further isolate the issue, try importing the files using a plain bare jackrabbit instance without going through your application layer. you could e.g. use code like this: http://svn.apache.org/repos/asf/incubator/jackrabbit/trunk/contrib/examples/src/java/org/apache/jackrabbit/examples/FSImport.java good look hunting! cheers stefan > > - Richard > > <code> > ... > - persisting change log {#addedStates=10, #modifiedStates=1, > #deletedStates=0, # > modifiedRefs=0} took 62ms > - persisting change log {#addedStates=10, #modifiedStates=1, > #deletedStates=0, # > modifiedRefs=0} took 62ms > - persisting change log {#addedStates=10, #modifiedStates=1, > #deletedStates=0, # > modifiedRefs=0} took 62ms > - persisting change log {#addedStates=10, #modifiedStates=1, > #deletedStates=0, # > modifiedRefs=0} took 62ms > 27-Jul-2005 17:42:03 > com.wordmap.repository.jcr.jackrabbit.JackRabbitRepositoryF > actory getRepository > INFO: Using repository configuration file: C:\Documents and > Settings\richard.osb > aldeston\Local > Settings\Work\wmc\temp\WEB-INF\classes\com\wordmap\repository\jcr > \jackrabbit\repository.xml > - LocalFileSystem initialized at path c:\tmp\jcr-repository\repository > - LocalFileSystem initialized at path c:\tmp\jcr-repository\versions > - LocalFileSystem initialized at path > c:\tmp\jcr-repository\workspaces\.default > - LocalFileSystem initialized at path c:\tmp\jcr-repository\workspaces\bob > - LocalFileSystem initialized at path c:\tmp\jcr-repository\workspaces\lgcl > - LocalFileSystem initialized at path > c:\tmp\jcr-repository\workspaces\lgcl\inde > x > - LocalFileSystem initialized at path > c:\tmp\jcr-repository\workspaces\tester > - LocalFileSystem initialized at path c:\tmp\jcr-repository\versions\blobs > - LocalFileSystem initialized at path > c:\tmp\jcr-repository\workspaces\tester\bl > obs > - LocalFileSystem initialized at path > c:\tmp\jcr-repository\workspaces\lgcl\blob > s > - Found uncommitted redo log. Applying changes now... > - Unable to start repository. forcing shutdown. > - Notification of EventListeners stopped. > - Notification of EventListeners stopped. > 27-Jul-2005 17:42:04 > com.wordmap.repository.jcr.jackrabbit.JackRabbitRepositoryF > actory getRepository > SEVERE: javax.jcr.RepositoryException > javax.jcr.RepositoryException: 0: 0: 0 > at > org.apache.jackrabbit.core.SearchManager.<init>(SearchManager.java:12 > 5) > at > org.apache.jackrabbit.core.RepositoryImpl$WorkspaceInfo.getSearchMana > ger(RepositoryImpl.java:1141) > at > org.apache.jackrabbit.core.RepositoryImpl.getSearchManager(Repository > Impl.java:550) > at > org.apache.jackrabbit.core.RepositoryImpl.initWorkspace(RepositoryImp > l.java:412) > at > org.apache.jackrabbit.core.RepositoryImpl.<init>(RepositoryImpl.java: > 204) > at > org.apache.jackrabbit.core.RepositoryImpl.create(RepositoryImpl.java: > 358) > at > org.apache.jackrabbit.core.jndi.BindableRepository.init(BindableRepos > itory.java:116) > at > org.apache.jackrabbit.core.jndi.BindableRepository.create(BindableRep > ository.java:104) > at > org.apache.jackrabbit.core.jndi.RegistryHelper.registerRepository(Reg > istryHelper.java:57) > at > com.wordmap.repository.jcr.jackrabbit.JackRabbitRepositoryFactory.get > Repository(JackRabbitRepositoryFactory.java:87) > at > com.wordmap.repository.jcr.jackrabbit.JackRabbitRepositoryFactory.get > Workspace(JackRabbitRepositoryFactory.java:118) > at > com.wordmap.classification.repository.jcrbased.JcrRepositoryFactory.g > etRepository(JcrRepositoryFactory.java:38) > at > com.wordmap.classification.taxonomy.simple.SimpleTaxonomyFactory.getT > axonomy(SimpleTaxonomyFactory.java:33) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl. > java:39) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces > sorImpl.java:25) > at java.lang.reflect.Method.invoke(Method.java:324) > at > org.codehaus.groovy.runtime.ReflectionMetaMethod.invoke(ReflectionMet > aMethod.java:67) > at groovy.lang.MetaClass.doMethodInvoke(MetaClass.java:1386) > at groovy.lang.MetaClass.invokeMethod(MetaClass.java:309) > at > org.codehaus.groovy.runtime.Invoker.invokeMethod(Invoker.java:145) > at > org.codehaus.groovy.runtime.InvokerHelper.invokeMethod(InvokerHelper. > java:104) > at > org.codehaus.groovy.runtime.ScriptBytecodeAdapter.invokeMethod(Script > BytecodeAdapter.java:85) > at CopyRepository.run(Unknown Source) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl. > java:39) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces > sorImpl.java:25) > at java.lang.reflect.Method.invoke(Method.java:324) > at > org.codehaus.groovy.runtime.ReflectionMetaMethod.invoke(ReflectionMet > aMethod.java:67) > at groovy.lang.MetaClass.doMethodInvoke(MetaClass.java:1386) > at groovy.lang.MetaClass.invokeMethod(MetaClass.java:309) > at > org.codehaus.groovy.runtime.Invoker.invokeMethod(Invoker.java:165) > at > org.codehaus.groovy.runtime.InvokerHelper.invokeMethod(InvokerHelper. > java:104) > at > org.codehaus.groovy.runtime.InvokerHelper.runScript(InvokerHelper.jav > a:482) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl. > java:39) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces > sorImpl.java:25) > at java.lang.reflect.Method.invoke(Method.java:324) > at > org.codehaus.groovy.runtime.ReflectionMetaMethod.invoke(ReflectionMet > aMethod.java:67) > at groovy.lang.MetaClass.doMethodInvoke(MetaClass.java:1386) > at groovy.lang.MetaClass.invokeStaticMethod(MetaClass.java:455) > at > org.codehaus.groovy.runtime.Invoker.invokeMethod(Invoker.java:137) > at > org.codehaus.groovy.runtime.InvokerHelper.invokeMethod(InvokerHelper. > java:104) > at > org.codehaus.groovy.runtime.ScriptBytecodeAdapter.invokeMethod(Script > BytecodeAdapter.java:85) > at CopyRepository.main(Unknown Source) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl. > java:39) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces > sorImpl.java:25) > at java.lang.reflect.Method.invoke(Method.java:324) > at > org.codehaus.groovy.runtime.ReflectionMetaMethod.invoke(ReflectionMet > aMethod.java:67) > at groovy.lang.MetaClass.doMethodInvoke(MetaClass.java:1386) > at groovy.lang.MetaClass.invokeStaticMethod(MetaClass.java:455) > at > org.codehaus.groovy.runtime.Invoker.invokeMethod(Invoker.java:137) > at > org.codehaus.groovy.runtime.InvokerHelper.invokeMethod(InvokerHelper. > java:104) > at > groovy.lang.GroovyShell.runMainOrTestOrRunnable(GroovyShell.java:349) > > at groovy.lang.GroovyShell.run(GroovyShell.java:274) > at groovy.lang.GroovyShell.run(GroovyShell.java:202) > at groovy.ui.GroovyMain.processOnce(GroovyMain.java:417) > at groovy.ui.GroovyMain.run(GroovyMain.java:249) > at groovy.ui.GroovyMain.process(GroovyMain.java:235) > at groovy.ui.GroovyMain.main(GroovyMain.java:138) > at > org.codehaus.groovy.tools.GroovyStarter.main(GroovyStarter.java:92) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl. > java:39) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces > sorImpl.java:25) > at java.lang.reflect.Method.invoke(Method.java:324) > at > org.codehaus.classworlds.Launcher.launchEnhanced(Launcher.java:315) > at org.codehaus.classworlds.Launcher.launch(Launcher.java:255) > at > org.codehaus.classworlds.Launcher.mainWithExitCode(Launcher.java:429) > > at org.codehaus.classworlds.Launcher.main(Launcher.java:375) > Caused by: java.lang.ArrayIndexOutOfBoundsException: 0 > at > org.apache.jackrabbit.core.query.lucene.NodeIndexer.addBinaryValue(No > deIndexer.java:284) > at > org.apache.jackrabbit.core.query.lucene.NodeIndexer.addValue(NodeInde > xer.java:223) > at > org.apache.jackrabbit.core.query.lucene.NodeIndexer.createDoc(NodeInd > exer.java:162) > at > org.apache.jackrabbit.core.query.lucene.NodeIndexer.createDocument(No > deIndexer.java:116) > at > org.apache.jackrabbit.core.query.lucene.SearchIndex.createDocument(Se > archIndex.java:319) > at > org.apache.jackrabbit.core.query.lucene.MultiIndex.createDocument(Mul > tiIndex.java:338) > at > org.apache.jackrabbit.core.query.lucene.MultiIndex.addNodePersistent( > MultiIndex.java:434) > at > org.apache.jackrabbit.core.query.lucene.MultiIndex.<init>(MultiIndex. > java:186) > at > org.apache.jackrabbit.core.query.lucene.SearchIndex.doInit(SearchInde > x.java:132) > at > org.apache.jackrabbit.core.query.AbstractQueryHandler.init(AbstractQu > eryHandler.java:39) > at > org.apache.jackrabbit.core.SearchManager.<init>(SearchManager.java:12 > 3) > ... 69 more > java.lang.ArrayIndexOutOfBoundsException: 0 > at > org.apache.jackrabbit.core.query.lucene.NodeIndexer.addBinaryValue(No > deIndexer.java:284) > at > org.apache.jackrabbit.core.query.lucene.NodeIndexer.addValue(NodeInde > xer.java:223) > at > org.apache.jackrabbit.core.query.lucene.NodeIndexer.createDoc(NodeInd > exer.java:162) > at > org.apache.jackrabbit.core.query.lucene.NodeIndexer.createDocument(No > deIndexer.java:116) > at > org.apache.jackrabbit.core.query.lucene.SearchIndex.createDocument(Se > archIndex.java:319) > at > org.apache.jackrabbit.core.query.lucene.MultiIndex.createDocument(Mul > tiIndex.java:338) > at > org.apache.jackrabbit.core.query.lucene.MultiIndex.addNodePersistent( > MultiIndex.java:434) > at > org.apache.jackrabbit.core.query.lucene.MultiIndex.<init>(MultiIndex. > java:186) > at > org.apache.jackrabbit.core.query.lucene.SearchIndex.doInit(SearchInde > x.java:132) > at > org.apache.jackrabbit.core.query.AbstractQueryHandler.init(AbstractQu > eryHandler.java:39) > at > org.apache.jackrabbit.core.SearchManager.<init>(SearchManager.java:12 > 3) > at > org.apache.jackrabbit.core.RepositoryImpl$WorkspaceInfo.getSearchMana > ger(RepositoryImpl.java:1141) > at > org.apache.jackrabbit.core.RepositoryImpl.getSearchManager(Repository > Impl.java:550) > at > org.apache.jackrabbit.core.RepositoryImpl.initWorkspace(RepositoryImp > l.java:412) > at > org.apache.jackrabbit.core.RepositoryImpl.<init>(RepositoryImpl.java: > 204) > at > org.apache.jackrabbit.core.RepositoryImpl.create(RepositoryImpl.java: > 358) > at > org.apache.jackrabbit.core.jndi.BindableRepository.init(BindableRepos > itory.java:116) > at > org.apache.jackrabbit.core.jndi.BindableRepository.create(BindableRep > ository.java:104) > at > org.apache.jackrabbit.core.jndi.RegistryHelper.registerRepository(Reg > istryHelper.java:57) > at > com.wordmap.repository.jcr.jackrabbit.JackRabbitRepositoryFactory.get > Repository(JackRabbitRepositoryFactory.java:87) > at > com.wordmap.repository.jcr.jackrabbit.JackRabbitRepositoryFactory.get > Workspace(JackRabbitRepositoryFactory.java:118) > at > com.wordmap.classification.repository.jcrbased.JcrRepositoryFactory.g > etRepository(JcrRepositoryFactory.java:38) > at > com.wordmap.classification.taxonomy.simple.SimpleTaxonomyFactory.getT > axonomy(SimpleTaxonomyFactory.java:33) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl. > java:39) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces > sorImpl.java:25) > at java.lang.reflect.Method.invoke(Method.java:324) > at > org.codehaus.groovy.runtime.ReflectionMetaMethod.invoke(ReflectionMet > aMethod.java:67) > at groovy.lang.MetaClass.doMethodInvoke(MetaClass.java:1386) > at groovy.lang.MetaClass.invokeMethod(MetaClass.java:309) > at > org.codehaus.groovy.runtime.Invoker.invokeMethod(Invoker.java:145) > at > org.codehaus.groovy.runtime.InvokerHelper.invokeMethod(InvokerHelper. > java:104) > at > org.codehaus.groovy.runtime.ScriptBytecodeAdapter.invokeMethod(Script > BytecodeAdapter.java:85) > at CopyRepository.run(Unknown Source) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl. > java:39) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces > sorImpl.java:25) > at java.lang.reflect.Method.invoke(Method.java:324) > at > org.codehaus.groovy.runtime.ReflectionMetaMethod.invoke(ReflectionMet > aMethod.java:67) > at groovy.lang.MetaClass.doMethodInvoke(MetaClass.java:1386) > at groovy.lang.MetaClass.invokeMethod(MetaClass.java:309) > at > org.codehaus.groovy.runtime.Invoker.invokeMethod(Invoker.java:165) > at > org.codehaus.groovy.runtime.InvokerHelper.invokeMethod(InvokerHelper. > java:104) > at > org.codehaus.groovy.runtime.InvokerHelper.runScript(InvokerHelper.jav > a:482) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl. > java:39) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces > sorImpl.java:25) > at java.lang.reflect.Method.invoke(Method.java:324) > at > org.codehaus.groovy.runtime.ReflectionMetaMethod.invoke(ReflectionMet > aMethod.java:67) > at groovy.lang.MetaClass.doMethodInvoke(MetaClass.java:1386) > at groovy.lang.MetaClass.invokeStaticMethod(MetaClass.java:455) > at > org.codehaus.groovy.runtime.Invoker.invokeMethod(Invoker.java:137) > at > org.codehaus.groovy.runtime.InvokerHelper.invokeMethod(InvokerHelper. > java:104) > at > org.codehaus.groovy.runtime.ScriptBytecodeAdapter.invokeMethod(Script > BytecodeAdapter.java:85) > at CopyRepository.main(Unknown Source) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl. > java:39) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces > sorImpl.java:25) > at java.lang.reflect.Method.invoke(Method.java:324) > at > org.codehaus.groovy.runtime.ReflectionMetaMethod.invoke(ReflectionMet > aMethod.java:67) > at groovy.lang.MetaClass.doMethodInvoke(MetaClass.java:1386) > at groovy.lang.MetaClass.invokeStaticMethod(MetaClass.java:455) > at > org.codehaus.groovy.runtime.Invoker.invokeMethod(Invoker.java:137) > at > org.codehaus.groovy.runtime.InvokerHelper.invokeMethod(InvokerHelper. > java:104) > at > groovy.lang.GroovyShell.runMainOrTestOrRunnable(GroovyShell.java:349) > > at groovy.lang.GroovyShell.run(GroovyShell.java:274) > at groovy.lang.GroovyShell.run(GroovyShell.java:202) > at groovy.ui.GroovyMain.processOnce(GroovyMain.java:417) > at groovy.ui.GroovyMain.run(GroovyMain.java:249) > at groovy.ui.GroovyMain.process(GroovyMain.java:235) > at groovy.ui.GroovyMain.main(GroovyMain.java:138) > at > org.codehaus.groovy.tools.GroovyStarter.main(GroovyStarter.java:92) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl. > java:39) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces > sorImpl.java:25) > at java.lang.reflect.Method.invoke(Method.java:324) > at > org.codehaus.classworlds.Launcher.launchEnhanced(Launcher.java:315) > at org.codehaus.classworlds.Launcher.launch(Launcher.java:255) > at > org.codehaus.classworlds.Launcher.mainWithExitCode(Launcher.java:429) > > at org.codehaus.classworlds.Launcher.main(Launcher.java:375) > Caught: java.lang.RuntimeException: javax.jcr.RepositoryException: 0: 0: 0 > - Notification of EventListeners stopped. > - Notification of EventListeners stopped. > - Closing search index. > - Notification of EventListeners stopped. > - Notification of EventListeners stopped. > </code> > > > > >On 7/26/05, Richard Osbaldeston <[EMAIL PROTECTED]> wrote: > > > > > >>Hi all, > >> Managed to get our repository up & running on Windows, but > >>after populating it > >>with the contents of a file system (fairly large 400mb worth) the > >>performance dropped through > >>the floor and JackRabbit would silently hang. It'd take nearly two hours > >>just to delete the > >>repository files with rm -rf and more to re-populate again. NTFS was > >>obviously struggling with > >>just the automatically directory structure. > >> > >> > > > >yep, doesn't surprise me;) > > > > > > > >>So I've tried to move over to a linux box (same build files #224710) > >>things appear to work as expected for a small 200k teaser, but > >>attempting a population with the same script used under Windows fails > >>with an odd javax.jcr.RepositoryException after half and hour to an > >>hours worth of heavy loading.. wondering if anyone can cast some light > >>on the likely causes for the following exception? > >> > >> > > > >out of disk space? > > > > > > > >>Caught: com.wordmap.classification.repository.RepositoryException: > >>javax.jcr.RepositoryException: /1252: unable to update item.: failed to > >>store > >>property state: > >>551dbb73-119f-429c-a72b-8044afc2d2bb/{http://www.jcp.org/jcr/1.0}created: > >>failed > >>to create folder > >>/tmp/jcr-repository/workspaces/filestore-1.0/data/551d/bb73/119f429ca72b8044afc2 > >>d2bb : failed to store property state: > >>551dbb73-119f-429c-a72b-8044afc2d2bb/{http://www.jcp.org/jcr/1.0}created: > >>failed > >>to create folder > >>/tmp/jcr-repository/workspaces/filestore-1.0/data/551d/bb73/119f429ca72b8044afc2 > >>d2bb - Notification of EventListeners stopped. - Notification of > >>EventListeners > >>stopped. - Notification of EventListeners stopped. > >> > >> > > > >a full stack trace would certainly help investigating this issue. > > > >do you have enough disk space? > >did you try to import the exact same set of files & folders on a windows box? > >did the same problem occur on the windows box too? > >is it a specific file that causes the problem? > > > >please try the following to further narrow down the problem: > > > >- use CQFS > >- use ObjectPersistenceManager > > > > > > > >>I'm using the basic LocalFileSystem implementation here with the > >>XMLPersistenceManager, suspect the serialized object PM might also > >>improve performance, > >> > >> > > > >that would certainly be the case. XMLPersistenceManager is not recommended > >for production use because of its parsing overhead and disk footprint. > > > > > > > >>CQFS would be a non-starter as I'm investigating > >>JackRabbit/JCR for a potential commercial product. I've managed to turn > >>off the indexing (commented out of the repository.xml) as we shouldn't > >>need it just yet, but trying to remove versioning threw errors > >>(mandatory configuration?) > >> > >> > > > >just don't use mix:versionable for your imported nodes. > > > >cheers > >stefan > > > > > > > >>also intersted if they'res anything else I > >>can do to strip things down and speed things up..? > >> > >>- Richard > >> > >> > >> > > > > > > > >
