[ https://issues.apache.org/jira/browse/OAK-2778?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14508766#comment-14508766 ]
Marcel Reutegger commented on OAK-2778: --------------------------------------- Fixed in trunk: http://svn.apache.org/r1675566 The VersionGarbageCollector now uses the conditional remove method introduced with OAK-2804. I'll keep this issue open for now to analyze the performance impact of this change on bigger repositories... > DocumentNodeState is null for revision rx-x-x > --------------------------------------------- > > Key: OAK-2778 > URL: https://issues.apache.org/jira/browse/OAK-2778 > Project: Jackrabbit Oak > Issue Type: Bug > Components: core, mongomk > Affects Versions: 1.0, 1.2 > Reporter: Marcel Reutegger > Assignee: Marcel Reutegger > Fix For: 1.3.0 > > > On a system running Oak 1.0.12 the following exception is seen repeatedly > when the async index update tries to update a lucene index: > {noformat} > org.apache.sling.commons.scheduler.impl.QuartzScheduler Exception during job > execution of > org.apache.jackrabbit.oak.plugins.index.AsyncIndexUpdate@6be42cde : > DocumentNodeState is null for revision r14cbbd50ad2-0-1 of > /oak:index/lucene/:data/_1co.cfe (aborting getChildNodes()) > org.apache.jackrabbit.oak.plugins.document.DocumentStoreException: > DocumentNodeState is null for revision r14cbbd50ad2-0-1 of > /oak:index/lucene/:data/_1co.cfe (aborting getChildNodes()) > at > org.apache.jackrabbit.oak.plugins.document.DocumentNodeStore$6.apply(DocumentNodeStore.java:925) > at > org.apache.jackrabbit.oak.plugins.document.DocumentNodeStore$6.apply(DocumentNodeStore.java:919) > at com.google.common.collect.Iterators$8.transform(Iterators.java:794) > at > com.google.common.collect.TransformedIterator.next(TransformedIterator.java:48) > at > com.google.common.collect.TransformedIterator.next(TransformedIterator.java:48) > at > org.apache.jackrabbit.oak.plugins.document.DocumentNodeState$ChildNodeEntryIterator.next(DocumentNodeState.java:618) > at > org.apache.jackrabbit.oak.plugins.document.DocumentNodeState$ChildNodeEntryIterator.next(DocumentNodeState.java:587) > at > com.google.common.collect.TransformedIterator.next(TransformedIterator.java:48) > at com.google.common.collect.Iterators.addAll(Iterators.java:357) > at com.google.common.collect.Lists.newArrayList(Lists.java:146) > at com.google.common.collect.Iterables.toCollection(Iterables.java:334) > at com.google.common.collect.Iterables.toArray(Iterables.java:312) > at > org.apache.jackrabbit.oak.plugins.index.lucene.OakDirectory.listAll(OakDirectory.java:69) > at > org.apache.lucene.index.DirectoryReader.indexExists(DirectoryReader.java:339) > at org.apache.lucene.index.IndexWriter.<init>(IndexWriter.java:720) > at > org.apache.jackrabbit.oak.plugins.index.lucene.LuceneIndexEditorContext.getWriter(LuceneIndexEditorContext.java:134) > at > org.apache.jackrabbit.oak.plugins.index.lucene.LuceneIndexEditor.addOrUpdate(LuceneIndexEditor.java:260) > at > org.apache.jackrabbit.oak.plugins.index.lucene.LuceneIndexEditor.leave(LuceneIndexEditor.java:171) > at > org.apache.jackrabbit.oak.spi.commit.CompositeEditor.leave(CompositeEditor.java:74) > at > org.apache.jackrabbit.oak.spi.commit.VisibleEditor.leave(VisibleEditor.java:63) > at > org.apache.jackrabbit.oak.spi.commit.EditorDiff.childNodeAdded(EditorDiff.java:130) > at > org.apache.jackrabbit.oak.plugins.memory.EmptyNodeState.compareAgainstEmptyState(EmptyNodeState.java:160) > {noformat} > A similar issue was already fixed with OAK-2420. -- This message was sent by Atlassian JIRA (v6.3.4#6332)