[ https://issues.apache.org/jira/browse/OAK-2961?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14600724#comment-14600724 ]
Amit Jain commented on OAK-2961: -------------------------------- I think these warnings are fine. I debugged a little and these warnings seemed to be caused by: * A checkpoint of a successful async thread run being visible to 2 subsequent threads. * And one of these releasing the checkpoint after its successful run and the 2nd trying to read the checkpoint which has already been released. Relevant logs: {noformat} 10:51:40.025 DEBUG [oak-scheduled-executor-12] AsyncIndexUpdate.java:265 [async] Running background index task 10:51:40.030 INFO [oak-scheduled-executor-12] AsyncIndexUpdate.java:319 Marked checkpointToRelease afterCheckpoint [r14e292a0ad4-1-4] 10:51:41.037 INFO [oak-scheduled-executor-12] AsyncIndexUpdate.java:432 [async] Reindexing completed for indexes: [/oak:index/asyncconflict*(0)] in 1.007 s 10:51:41.040 INFO [oak-scheduled-executor-12] AsyncIndexUpdate.java:334 Marked checkpointToRelease beforeCheckpoint [r14e2929faff-0-1] 10:51:41.040 INFO [oak-scheduled-executor-12] AsyncIndexUpdate.java:351 [r14e2929faff-0-1] checkpoint to release 10:51:45.953 DEBUG [oak-scheduled-executor-19] AsyncIndexUpdate.java:265 [async] Running background index task 10:51:45.956 INFO [oak-scheduled-executor-19] AsyncIndexUpdate.java:319 Marked checkpointToRelease afterCheckpoint [r14e292a1a05-1-3] 10:51:45.956 DEBUG [oak-scheduled-executor-19] AsyncIndexUpdate.java:221 [async] Releasing temporary checkpoint r14e2929faff-0-1: true 10:51:45.970 DEBUG [oak-scheduled-executor-19] AsyncIndexUpdate.java:447 [async] AsyncIndex update run completed in 14.37 ms. Indexed 0 nodes 10:51:45.971 INFO [oak-scheduled-executor-19] AsyncIndexUpdate.java:334 Marked checkpointToRelease beforeCheckpoint [r14e292a0ad4-1-4] 10:51:46.042 DEBUG [oak-scheduled-executor-18] AsyncIndexUpdate.java:265 [async] Running background index task 10:51:46.042 WARN [oak-scheduled-executor-18] AsyncIndexUpdate.java:286 [async] Failed to retrieve previously indexed checkpoint r14e292a0ad4-1-4; re-running the initial index update 10:51:46.043 INFO [oak-scheduled-executor-18] AsyncIndexUpdate.java:319 Marked checkpointToRelease afterCheckpoint [r14e292a16af-0-4] 10:51:46.043 DEBUG [oak-scheduled-executor-18] AsyncIndexUpdate.java:221 [async] Releasing temporary checkpoint r14e2929faff-0-1: true 10:51:46.046 DEBUG [oak-scheduled-executor-18] AsyncIndexUpdate.java:221 [async] Releasing temporary checkpoint r14e292a0ad4-1-4: true {noformat} > Async index fails with OakState0001: Unresolved conflicts in /:async > -------------------------------------------------------------------- > > Key: OAK-2961 > URL: https://issues.apache.org/jira/browse/OAK-2961 > Project: Jackrabbit Oak > Issue Type: Bug > Components: mongomk, query > Affects Versions: 1.2.2, 1.0.14, 1.4 > Reporter: Davide Giannella > Assignee: Davide Giannella > Labels: resilience > Fix For: 1.2.3, 1.3.2 > > Attachments: OAK-2961.patch > > > When running on a mongo cluster, in case of high activity the async index > could fail with the following exception. > Reproduced with LucenePropertyIndex. > {noformat} > 10:55:13.069 [oak-scheduled-executor-5] WARN > o.a.j.o.p.index.AsyncIndexUpdate - [async] The index update failed > org.apache.jackrabbit.oak.api.CommitFailedException: OakState0001: Unresolved > conflicts in /:async > at > org.apache.jackrabbit.oak.plugins.commit.ConflictValidator.failOnMergeConflict(ConflictValidator.java:84) > ~[classes/:na] > at > org.apache.jackrabbit.oak.plugins.commit.ConflictValidator.propertyAdded(ConflictValidator.java:54) > ~[classes/:na] > at > org.apache.jackrabbit.oak.spi.commit.EditorDiff.propertyAdded(EditorDiff.java:82) > ~[classes/:na] > at > org.apache.jackrabbit.oak.plugins.memory.ModifiedNodeState.compareAgainstBaseState(ModifiedNodeState.java:378) > ~[classes/:na] > at > org.apache.jackrabbit.oak.spi.commit.EditorDiff.childNodeChanged(EditorDiff.java:148) > ~[classes/:na] > at > org.apache.jackrabbit.oak.plugins.memory.ModifiedNodeState.compareAgainstBaseState(ModifiedNodeState.java:400) > ~[classes/:na] > at > org.apache.jackrabbit.oak.spi.commit.EditorDiff.process(EditorDiff.java:52) > ~[classes/:na] > at > org.apache.jackrabbit.oak.spi.commit.EditorHook.processCommit(EditorHook.java:55) > ~[classes/:na] > at > org.apache.jackrabbit.oak.spi.commit.CompositeHook.processCommit(CompositeHook.java:61) > ~[classes/:na] > at > org.apache.jackrabbit.oak.plugins.document.DocumentNodeStoreBranch$InMemory.merge(DocumentNodeStoreBranch.java:528) > ~[classes/:na] > at > org.apache.jackrabbit.oak.plugins.document.DocumentNodeStoreBranch.merge0(DocumentNodeStoreBranch.java:219) > ~[classes/:na] > at > org.apache.jackrabbit.oak.plugins.document.DocumentNodeStoreBranch.merge(DocumentNodeStoreBranch.java:171) > ~[classes/:na] > at > org.apache.jackrabbit.oak.plugins.document.DocumentRootBuilder.merge(DocumentRootBuilder.java:158) > ~[classes/:na] > at > org.apache.jackrabbit.oak.plugins.document.DocumentNodeStore.merge(DocumentNodeStore.java:1466) > ~[classes/:na] > at > org.apache.jackrabbit.oak.plugins.index.AsyncIndexUpdate.mergeWithConcurrencyCheck(AsyncIndexUpdate.java:467) > ~[classes/:na] > at > org.apache.jackrabbit.oak.plugins.index.AsyncIndexUpdate.access$4(AsyncIndexUpdate.java:445) > ~[classes/:na] > at > org.apache.jackrabbit.oak.plugins.index.AsyncIndexUpdate$AsyncUpdateCallback.<init>(AsyncIndexUpdate.java:201) > ~[classes/:na] > at > org.apache.jackrabbit.oak.plugins.index.AsyncIndexUpdate.updateIndex(AsyncIndexUpdate.java:372) > ~[classes/:na] > at > org.apache.jackrabbit.oak.plugins.index.AsyncIndexUpdate.run(AsyncIndexUpdate.java:320) > ~[classes/:na] > at > java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471) > [na:1.7.0_60] > at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:304) > [na:1.7.0_60] > at > java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:178) > [na:1.7.0_60] > at > java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293) > [na:1.7.0_60] > at > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) > [na:1.7.0_60] > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) > [na:1.7.0_60] > at java.lang.Thread.run(Thread.java:745) [na:1.7.0_60] > {noformat} -- This message was sent by Atlassian JIRA (v6.3.4#6332)