[ https://issues.apache.org/jira/browse/OAK-3070?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15890045#comment-15890045 ]
Vikas Saurabh commented on OAK-3070: ------------------------------------ bq. Such a repository would have documents representing resurrected nodes older than the lower bound for the VersionGC. Good point. My first thought was that may be an oak-run script could do this as it's a required-once type activity. But, bq. Would Oak ignore the lower bound after the upgrade and OAK-5704 resets the _deletedOnce flags of those documents? sounds more logical - so, may be (I don't know if we ever do it or not) - that OAK-3070 goes _only as backport_ (not in trunk) and OAK-5704backport reverts OAK-3070 along with backport!? One of the things that I like about having only one of these in a running system is avoid-unnecessary redundancy. Btw, I think that along with test(s?) in OAK-5704 to see that {{deletedOnce}} gets reset, we might also want to add tests that just assert how many documents are returned in collection phase - I mean the test shouldn't worry about the condition of the query being sent... just how many docs are scanned. That test should be valid with either of OAK-5704, OAK-3070, OAK-3070\+OAK-5704, OAK-3070\+OAK-5704+revert_OAK-3070. > Use a lower bound in VersionGC query to avoid checking unmodified once > deleted docs > ----------------------------------------------------------------------------------- > > Key: OAK-3070 > URL: https://issues.apache.org/jira/browse/OAK-3070 > Project: Jackrabbit Oak > Issue Type: Improvement > Components: mongomk, rdbmk > Reporter: Chetan Mehrotra > Assignee: Vikas Saurabh > Labels: performance > Attachments: OAK-3070.patch, OAK-3070-updated.patch, > OAK-3070-updated.patch > > > As part of OAK-3062 [~mreutegg] suggested > {quote} > As a further optimization we could also limit the lower bound of the _modified > range. The revision GC does not need to check documents with a _deletedOnce > again if they were not modified after the last successful GC run. If they > didn't change and were considered existing during the last run, then they > must still exist in the current GC run. To make this work, we'd need to > track the last successful revision GC run. > {quote} > Lowest last validated _modified can be possibly saved in settings collection > and reused for next run -- This message was sent by Atlassian JIRA (v6.3.15#6346)