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] [Resolved] (OAK-3690) Decouple SegmentBufferWriter from SegmentStore
Date Wed, 01 Mar 2017 17:31:45 GMT

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

Michael Dürig resolved OAK-3690.
       Resolution: Fixed
    Fix Version/s: 1.7.0

Fixed at http://svn.apache.org/viewvc?rev=1785000&view=rev.

Removing the {{SegmentIdProvider}} parameter from the {{Segment}} constructor is unfortunately
not easily possible ATM as the segment needs to be able to resolve its references. [~frm]
if you think we need to improve this aspect, please open a dedicated issue for discussing

> Decouple SegmentBufferWriter from SegmentStore
> ----------------------------------------------
>                 Key: OAK-3690
>                 URL: https://issues.apache.org/jira/browse/OAK-3690
>             Project: Jackrabbit Oak
>          Issue Type: Technical task
>          Components: segment-tar
>            Reporter: Michael Dürig
>            Assignee: Michael Dürig
>              Labels: technical_debt
>             Fix For: 1.7.0, 1.8
> Currently {{SegmentBufferWriter.flush()}} directly calls {{SegmentStore.writeSegment()}}
once the current segment does not have enough space for the next record. We should try to
cut this dependency as {{SegmentBufferWriter}} should only be concerned with providing buffers
for segments. Actually writing these to the store should be handled by a higher level component.

> A number of deadlock (e.g. (OAK-2560, OAK-3179, OAK-3264) we have seen is one manifestation
of this troublesome dependency. 

This message was sent by Atlassian JIRA

View raw message