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

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

Michael Dürig commented on OAK-3690:

bq. Segment uses a SegmentIdProvider only to instantiate new instances of SegmentId, one for
each referenced segment

Good point! I see what I can do about this. Depending on how easy it is I'll include it right
away or take it up later. Thanks for reviewing!

> 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.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