jackrabbit-oak-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Michael Dürig (JIRA) <j...@apache.org>
Subject [jira] [Updated] (OAK-6915) Minimize the amount of uncached segment reads
Date Fri, 10 Nov 2017 08:52:00 GMT

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

Michael Dürig updated OAK-6915:
    Attachment: Screen Shot 2017-11-09 at 14.14.28.png
                Screen Shot 2017-11-09 at 14.16.59.png

On OAK-6106 not unloading the segments caused OOMEs with {{ManyChildNodeIT}}. I quickly double
checked running this test on trunk commenting the calls to {{Segment.unloaded()}} out and
could reproduce the OOME. 

Attached screenshots show memory and JCM GC with and without the unloaded call when running
that test on a 4GB heap and 20M nodes.

With unloading disabled there is an OOME at 14:10:30
!Screen Shot 2017-11-09 at 14.14.28.png|width=500!

With unloading enabled heap and GC activity is stable:
!Screen Shot 2017-11-09 at 14.16.59.png|width=500!

I thus think we also need to evaluate our patches for this issue under this aspect. 

> Minimize the amount of uncached segment reads
> ---------------------------------------------
>                 Key: OAK-6915
>                 URL: https://issues.apache.org/jira/browse/OAK-6915
>             Project: Jackrabbit Oak
>          Issue Type: Improvement
>          Components: segment-tar
>            Reporter: Francesco Mari
>            Assignee: Francesco Mari
>             Fix For: 1.8, 1.7.12
>         Attachments: OAK-6915-01.patch, OAK-6915-02.patch, OAK-6915-diagnostics-02.patch,
OAK-6915-diagnostics.patch, OAK-6915.patch, Screen Shot 2017-11-09 at 14.14.28.png, Screen
Shot 2017-11-09 at 14.16.59.png
> The current implementation of {{SegmentCache}} should make better use of the underlying
Guava cache by relying on the cached segments instead of unconditionally performing an uncached
segment read via the {{Callable<Segment>}} passed to {{SegmentCache#getSegment}}.

This message was sent by Atlassian JIRA

View raw message