You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@bookkeeper.apache.org by "Ivan Kelly (JIRA)" <ji...@apache.org> on 2013/02/13 18:04:12 UTC

[jira] [Updated] (BOOKKEEPER-569) Critical performance bug in InterleavedLedgerStorage

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

Ivan Kelly updated BOOKKEEPER-569:
----------------------------------

    Attachment: 0001-BOOKKEEPER-569-Critical-performance-issue-in-Interle.patch
    
> Critical performance bug in InterleavedLedgerStorage
> ----------------------------------------------------
>
>                 Key: BOOKKEEPER-569
>                 URL: https://issues.apache.org/jira/browse/BOOKKEEPER-569
>             Project: Bookkeeper
>          Issue Type: Bug
>            Reporter: Ivan Kelly
>            Assignee: Ivan Kelly
>            Priority: Blocker
>             Fix For: 4.3.0, 4.2.1
>
>         Attachments: 0001-BOOKKEEPER-569-Critical-performance-issue-in-Interle.patch
>
>
> There's a synchronization on InterleavedLedgerStorage#flush(), which kills performance when you're writing to many ledgers on a single bookie. Both #flush and #addEntry are synchronized, which blocks any adds being serviced while the sync thread is running.
> The sync on #addEntry has always been there, but on #flush it has only existed since BOOKKEEPER-293. The addition was obviously a mistake.
> Fix is simply to remove it.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira