jackrabbit-oak-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Jukka Zitting (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (OAK-1804) TarMK compaction
Date Tue, 10 Jun 2014 19:55:02 GMT

    [ https://issues.apache.org/jira/browse/OAK-1804?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14026906#comment-14026906

Jukka Zitting commented on OAK-1804:

I found a way to further squeeze the memory overhead of the compaction map; see revision 1601757.
The mapping is now encapsulated in a separate {{CompactionMap}} class, and the amortized memory
overhead of each mapping entry is just {{20/n + 8}} bytes, where {{n}} is the average numbers
of compacted records within a source segment. See the {{CompactionMap}} javadocs for details
on the new data structure.

AFAICT we're pretty much done here, especially with the re-enabled the RecordId cache flush
from above. Is there anything that still needs to be done?

> TarMK compaction
> ----------------
>                 Key: OAK-1804
>                 URL: https://issues.apache.org/jira/browse/OAK-1804
>             Project: Jackrabbit Oak
>          Issue Type: New Feature
>          Components: segmentmk
>            Reporter: Jukka Zitting
>            Assignee: Alex Parvulescu
>              Labels: production, tools
>             Fix For: 1.0.1, 1.1
>         Attachments: SegmentNodeStore.java.patch, compact-on-flush.patch, compaction-map-as-bytebuffer.patch,
compaction.patch, fast-equals.patch
> The TarMK would benefit from periodic "compact" operations that would traverse and recreate
(parts of) the content tree in order to optimize the storage layout. More specifically, such
compaction would:
> * Optimize performance by increasing locality and reducing duplication, both of which
improve the effectiveness of caching.
> * Allow the garbage collector to release more unused disk space by removing references
to segments where only a subset of content is reachable.

This message was sent by Atlassian JIRA

View raw message