[
https://issues.apache.org/jira/browse/OAK-2769?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14494382#comment-14494382
]
Chetan Mehrotra commented on OAK-2769:
--------------------------------------
This would also help in debugging issues where cursor gets killed with VersionGC
{noformat}
09.04.2015 02:23:04.747 *ERROR* [pool-8-thread-35-Maintenance
Queue(com/adobe/granite/maintenance/job/RevisionCleanupTask)]
org.apache.jackrabbit.oak.management.ManagementOperation Revision garbage
collection failed
com.mongodb.MongoException$CursorNotFound: Cursor 426315582934 not found on
server mongoserver: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:95)
at
org.apache.jackrabbit.oak.plugins.document.VersionGarbageCollector.gc(VersionGarbageCollector.java:79)
at
org.apache.jackrabbit.oak.plugins.document.DocumentNodeStoreService$2.run(DocumentNodeStoreService.java:472)
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)
09.04.2015 02:23:06.778 *INFO* [pool-7-thread-15]
org.apache.jackrabbit.oak.plugins.document.VersionGarbageCollector Starting
revision garbage collection. Revisions older than [2015-04-08 02:23:06.778]
would be removed
09.04.2015 03:04:36.082 *INFO* [pool-7-thread-15]
org.apache.jackrabbit.oak.plugins.document.VersionGarbageCollector Version
garbage collected in 41.49 min. VersionGCStats{ignoredGCDueToCheckPoint=false,
deletedDocGCCount=295702, splitDocGCCount=2632, intermediateSplitDocGCCount=232}
{noformat}
Per [1] Mongo would kill a cursor if its inactive for 10 mins. But the way we
use the Cursor I am not sure how it can remain inactive for such long time.
[1] http://docs.mongodb.org/manual/core/cursors/#closure-of-inactive-cursors
> Add progress log to VersionGC in DocumentNodeStore
> --------------------------------------------------
>
> Key: OAK-2769
> URL: https://issues.apache.org/jira/browse/OAK-2769
> Project: Jackrabbit Oak
> Issue Type: Improvement
> Components: mongomk
> Reporter: Chetan Mehrotra
> Assignee: Chetan Mehrotra
> Priority: Minor
> Fix For: 1.0.13, 1.3.0
>
>
> While performing VersionGC when large number of documents are deleted at
> times version gc takes upto an hour. It would be helpful to log progress logs
> as it traverses the deleted document cursor
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)