[ 
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)

Reply via email to