jackrabbit-oak-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Alex Parvulescu (JIRA)" <j...@apache.org>
Subject [jira] [Updated] (OAK-1932) TarMK compaction can create mixed segments
Date Thu, 03 Jul 2014 14:04:24 GMT

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

Alex Parvulescu updated OAK-1932:

    Attachment: CompactorTest.java.patch

There's an issue with the current state of the compactor code, basically the compactor doesn't
copy over state that has not changed (because the diff doesn't traverse those parts of the
tree), so the 'after' state might be incomplete to the point where passing in 2 equals states
returns an empty state.

I'm attaching a test case to demo the problem, with a simple fix for the case where the root
states are equal, but this happens on any level of the tree

> TarMK compaction can create mixed segments
> ------------------------------------------
>                 Key: OAK-1932
>                 URL: https://issues.apache.org/jira/browse/OAK-1932
>             Project: Jackrabbit Oak
>          Issue Type: Bug
>          Components: core, segmentmk
>    Affects Versions: 1.0.1
>            Reporter: Jukka Zitting
>            Assignee: Jukka Zitting
>         Attachments: CompactorTest.java.patch
> As described in http://markmail.org/message/ujkqdlthudaortxf, commits that occur while
the compaction operation is running can make the compacted segments contain references to
older data segments, which prevents old data from being reclaimed during cleanup.

This message was sent by Atlassian JIRA

View raw message