[
https://issues.apache.org/jira/browse/OAK-4923?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15572353#comment-15572353
]
Michael Dürig commented on OAK-4923:
------------------------------------
A couple of ideas for improvements:
https://github.com/mduerig/jackrabbit-oak/commits/OAK-4923
So far this is just a POC to evaluate the performance impacts. The various maps
in the current implementation quite often appear in stack traces, so I would
assume there is room for optimisation here. However, we need to carefully
evaluate this first before we jump to conclusion. Specifically I have
discovered an issue with the segment (LIRS) cache I'm researching (no issue
yet). Once that one is sorted out we need to see where we stand and whether we
need to further improve things here.
> Improve segment deserialization performance
> -------------------------------------------
>
> Key: OAK-4923
> URL: https://issues.apache.org/jira/browse/OAK-4923
> Project: Jackrabbit Oak
> Issue Type: Improvement
> Components: segment-tar
> Reporter: Francesco Mari
> Assignee: Francesco Mari
> Fix For: Segment Tar 0.0.16
>
> Attachments: OAK-4923-01.patch, OAK-4923-02.patch
>
>
> The methods {{readReferencedSegments}} and {{readRecordNumberOffsets}} in
> {{Segment}} compute the returned data every time they are called. While this
> is a very clean implementation, this might force unexpected I/O operations,
> since the "buffer" the data is read from usually is a memory-mapped file.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)