[ 
https://issues.apache.org/jira/browse/OAK-3062?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Chetan Mehrotra updated OAK-3062:
---------------------------------
    Attachment: cursor-78740863820.log
                versiongc-oak.log

Attaching
* [Oak Logs|^versiongc-oak.log]
* [Mongod Logs|^cursor-78740863820.log]

Key thing to observe is that Mongo is using index on {{_modified}} instead of 
index on {{_deletedOnce}}

{noformat}
2015-06-30T03:27:20.318-0400 [conn11654] query aem-author.nodes query: { 
_deletedOnce: true, _modified: { $lt: 1435562840 } } planSummary: IXSCAN { 
_modified: -1 } cursorid:78740863820 ntoreturn:0 ntoskip:0 nscanned:131 
nscannedObjects:131 keyUpdates:0 numYields:32 locks(micros) r:58967 
nreturned:101 reslen:73159 147ms
{noformat}

As a fix we should send a hint to make use of {{_deletedOnce}} index always 



> VersionGC failing on Mongo with CursorNotFoundException
> -------------------------------------------------------
>
>                 Key: OAK-3062
>                 URL: https://issues.apache.org/jira/browse/OAK-3062
>             Project: Jackrabbit Oak
>          Issue Type: Bug
>          Components: mongomk
>            Reporter: Chetan Mehrotra
>            Assignee: Chetan Mehrotra
>             Fix For: 1.2.3, 1.3.3, 1.0.17
>
>         Attachments: cursor-78740863820.log, versiongc-oak.log
>
>
> At times the VersionGC on big repository fails with following exception
> {noformat}
> 30.06.2015 03:55:59.253 *INFO* [pool-7-thread-132] 
> org.apache.jackrabbit.oak.plugins.document.VersionGarbageCollector Iterated 
> through 440000 documents so far. 410668 found to be deleted
> com.mongodb.MongoException$CursorNotFound: Cursor 78740863820 not found on 
> server mongo2.aem.lan.tpa.foxnews.com:27017
>       at 
> com.mongodb.QueryResultIterator.throwOnQueryFailure(QueryResultIterator.java:218)
>       at com.mongodb.QueryResultIterator.init(QueryResultIterator.java:198)
>       at 
> com.mongodb.QueryResultIterator.initFromQueryResponse(QueryResultIterator.java:176)
>       at com.mongodb.QueryResultIterator.getMore(QueryResultIterator.java:141)
>       at com.mongodb.QueryResultIterator.hasNext(QueryResultIterator.java:127)
>       at com.mongodb.DBCursor._hasNext(DBCursor.java:551)
>       at com.mongodb.DBCursor.hasNext(DBCursor.java:571)
>       at 
> com.google.common.collect.TransformedIterator.hasNext(TransformedIterator.java:43)
>       at 
> org.apache.jackrabbit.oak.plugins.document.VersionGarbageCollector.collectDeletedDocuments(VersionGarbageCollector.java:110)
>       at 
> org.apache.jackrabbit.oak.plugins.document.VersionGarbageCollector.gc(VersionGarbageCollector.java:85)
>       at 
> org.apache.jackrabbit.oak.plugins.document.DocumentNodeStoreService$2.run(DocumentNodeStoreService.java:503)
>       at 
> org.apache.jackrabbit.oak.spi.state.RevisionGC$1.call(RevisionGC.java:68)
>       at 
> org.apache.jackrabbit.oak.spi.state.RevisionGC$1.call(RevisionGC.java:64)
>       at java.util.concurrent.FutureTask.run(FutureTask.java:262)
>       at 
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
>       at 
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
>       at java.lang.Thread.run(Thread.java:745)
> {noformat}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to