[jira] [Commented] (OAK-8448) VersionGC may get stuck at 60s scope
[ https://issues.apache.org/jira/browse/OAK-8448?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16881193#comment-16881193 ] Julian Reschke commented on OAK-8448: - trunk: [r1862806|http://svn.apache.org/r1862806] [r1862537|http://svn.apache.org/r1862537] > VersionGC may get stuck at 60s scope > - > > Key: OAK-8448 > URL: https://issues.apache.org/jira/browse/OAK-8448 > Project: Jackrabbit Oak > Issue Type: Bug > Components: documentmk >Affects Versions: 1.8.9 >Reporter: Julian Reschke >Assignee: Julian Reschke >Priority: Major > Labels: candidate_oak_1_10 > Fix For: 1.16.0 > > Attachments: OAK-8448.diff, test.diff > > > It seems that if the VersionGarbageCollector reduces the scope to a 60s > interval, it'll never change it back to a bigger interval. This is because > the collectLimit gets set to 0: > {noformat} > if (scope.getDurationMs() <= options.precisionMs) { > // If we have narrowed the collect time interval down as much > as we can, no > // longer enforce a limit. We need to get through this. > collectLimit = 0; > log.debug("time interval <= precision ({} ms), disabling > collection limits", options.precisionMs); > } > {noformat} > ...and later on this is interpreted as "there were no restrictions in the > prior run that need to be updated": > {noformat} > if (maxCollect <= 0) { > log.debug("successful run without effective limit, > keeping recommendations"); > } > {noformat} -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (OAK-8448) VersionGC may get stuck at 60s scope
[ https://issues.apache.org/jira/browse/OAK-8448?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16881169#comment-16881169 ] Marcel Reutegger commented on OAK-8448: --- Looks good to me. > VersionGC may get stuck at 60s scope > - > > Key: OAK-8448 > URL: https://issues.apache.org/jira/browse/OAK-8448 > Project: Jackrabbit Oak > Issue Type: Bug > Components: documentmk >Affects Versions: 1.8.9 >Reporter: Julian Reschke >Assignee: Julian Reschke >Priority: Major > Attachments: OAK-8448.diff, test.diff > > > It seems that if the VersionGarbageCollector reduces the scope to a 60s > interval, it'll never change it back to a bigger interval. This is because > the collectLimit gets set to 0: > {noformat} > if (scope.getDurationMs() <= options.precisionMs) { > // If we have narrowed the collect time interval down as much > as we can, no > // longer enforce a limit. We need to get through this. > collectLimit = 0; > log.debug("time interval <= precision ({} ms), disabling > collection limits", options.precisionMs); > } > {noformat} > ...and later on this is interpreted as "there were no restrictions in the > prior run that need to be updated": > {noformat} > if (maxCollect <= 0) { > log.debug("successful run without effective limit, > keeping recommendations"); > } > {noformat} -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (OAK-8448) VersionGC may get stuck at 60s scope
[ https://issues.apache.org/jira/browse/OAK-8448?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16878453#comment-16878453 ] Julian Reschke commented on OAK-8448: - Proposed fix: [^OAK-8448.diff] > VersionGC may get stuck at 60s scope > - > > Key: OAK-8448 > URL: https://issues.apache.org/jira/browse/OAK-8448 > Project: Jackrabbit Oak > Issue Type: Bug > Components: documentmk >Affects Versions: 1.8.9 >Reporter: Julian Reschke >Assignee: Julian Reschke >Priority: Major > Attachments: OAK-8448.diff, test.diff > > > It seems that if the VersionGarbageCollector reduces the scope to a 60s > interval, it'll never change it back to a bigger interval. This is because > the collectLimit gets set to 0: > {noformat} > if (scope.getDurationMs() <= options.precisionMs) { > // If we have narrowed the collect time interval down as much > as we can, no > // longer enforce a limit. We need to get through this. > collectLimit = 0; > log.debug("time interval <= precision ({} ms), disabling > collection limits", options.precisionMs); > } > {noformat} > ...and later on this is interpreted as "there were no restrictions in the > prior run that need to be updated": > {noformat} > if (maxCollect <= 0) { > log.debug("successful run without effective limit, > keeping recommendations"); > } > {noformat} -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (OAK-8448) VersionGC may get stuck at 60s scope
[ https://issues.apache.org/jira/browse/OAK-8448?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16878407#comment-16878407 ] Julian Reschke commented on OAK-8448: - trunk: [r1862537|http://svn.apache.org/r1862537] > VersionGC may get stuck at 60s scope > - > > Key: OAK-8448 > URL: https://issues.apache.org/jira/browse/OAK-8448 > Project: Jackrabbit Oak > Issue Type: Bug > Components: documentmk >Affects Versions: 1.8.9 >Reporter: Julian Reschke >Assignee: Julian Reschke >Priority: Major > Attachments: test.diff > > > It seems that if the VersionGarbageCollector reduces the scope to a 60s > interval, it'll never change it back to a bigger interval. This is because > the collectLimit gets set to 0: > {noformat} > if (scope.getDurationMs() <= options.precisionMs) { > // If we have narrowed the collect time interval down as much > as we can, no > // longer enforce a limit. We need to get through this. > collectLimit = 0; > log.debug("time interval <= precision ({} ms), disabling > collection limits", options.precisionMs); > } > {noformat} > ...and later on this is interpreted as "there were no restrictions in the > prior run that need to be updated": > {noformat} > if (maxCollect <= 0) { > log.debug("successful run without effective limit, > keeping recommendations"); > } > {noformat} -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (OAK-8448) VersionGC may get stuck at 60s scope
[ https://issues.apache.org/jira/browse/OAK-8448?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16877892#comment-16877892 ] Julian Reschke commented on OAK-8448: - Test that shows the problematic behaviour: [^test.diff] > VersionGC may get stuck at 60s scope > - > > Key: OAK-8448 > URL: https://issues.apache.org/jira/browse/OAK-8448 > Project: Jackrabbit Oak > Issue Type: Bug > Components: documentmk >Affects Versions: 1.8.9 >Reporter: Julian Reschke >Assignee: Julian Reschke >Priority: Major > Attachments: test.diff > > > It seems that if the VersionGarbageCollector reduces the scope to a 60s > interval, it'll never change it back to a bigger interval. This is because > the collectLimit gets set to 0: > {noformat} > if (scope.getDurationMs() <= options.precisionMs) { > // If we have narrowed the collect time interval down as much > as we can, no > // longer enforce a limit. We need to get through this. > collectLimit = 0; > log.debug("time interval <= precision ({} ms), disabling > collection limits", options.precisionMs); > } > {noformat} > ...and later on this is interpreted as "there were no restrictions in the > prior run that need to be updated": > {noformat} > if (maxCollect <= 0) { > log.debug("successful run without effective limit, > keeping recommendations"); > } > {noformat} -- This message was sent by Atlassian JIRA (v7.6.3#76005)