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

Jukka Zitting resolved OAK-1031.
--------------------------------

       Resolution: Fixed
    Fix Version/s: 0.11
         Assignee: Jukka Zitting

Each Record instance now has a (lazily initialized) reference to the containing 
segment, which has greatly reduced the number of segment lookups. Thus 
resolving as fixed.

> SegmentMK: Fewer segment lookups
> --------------------------------
>
>                 Key: OAK-1031
>                 URL: https://issues.apache.org/jira/browse/OAK-1031
>             Project: Jackrabbit Oak
>          Issue Type: Sub-task
>          Components: core
>            Reporter: Jukka Zitting
>            Assignee: Jukka Zitting
>            Priority: Minor
>             Fix For: 0.11
>
>
> The SegmentMK uses record references composed of a segment UUID and an offset 
> within that segment. When accessing a record, the normal pattern is to first 
> look up the segment using the UUID and then read the data from that segment.
> Unfortunately it looks like all those segment lookups take up a notable 
> percentage of the time spent reading data in the SegmentMK, so it would be 
> good if we could avoid at least some of those lookups.
> Given the locality of reference that the SegmentMK design tries to maximise, 
> achieving that goal should be easy. In practice most record references point 
> to other records in the same segment, so if we keep track of the segment 
> we're currently accessing, we can in most cases avoid the extra lookups.
> Some of this work is already implemented, especially for accessing property 
> values, but other pieces are still missing. This issue exist to track the 
> remaining work.



--
This message was sent by Atlassian JIRA
(v6.1#6144)

Reply via email to