zookeeper-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Flavio Paiva Junqueira (JIRA)" <j...@apache.org>
Subject [jira] Updated: (ZOOKEEPER-387) closeLedger shouldn't shut down all QuorumEngines
Date Wed, 29 Apr 2009 08:34:30 GMT

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

Flavio Paiva Junqueira updated ZOOKEEPER-387:

    Attachment: ZOOKEEPER-387.patch

> closeLedger shouldn't shut down all QuorumEngines
> -------------------------------------------------
>                 Key: ZOOKEEPER-387
>                 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-387
>             Project: Zookeeper
>          Issue Type: Bug
>          Components: contrib-bookkeeper
>            Reporter: Flavio Paiva Junqueira
>            Assignee: Flavio Paiva Junqueira
>         Attachments: ZOOKEEPER-387.patch
> We had initially assumed one ledger open at a time, and LedgerRecoverMonitor reads and
closes a ledger without instantiating a QuorumEngine. Consequently, when closing a ledger,
we have to shut down a QuorumEngine only if there is one. A poor way of implementing it is
by having a for loop that iterates over all available QuorumEngines and shut them down. Given
the assumptions of one ledger at a time and no QuorumEngine for LedgerRecoveryMonitor, this
implementation works. However, as we move to a more flexible model in which multiple ledgers
can be open and closed at arbitrary times, the for loop choice no longer works. 
> The attached patch fixes this problem by just shutting down the QuorumEngine instance
corresponding to the ledger being closed, and it checks if a QuorumEngine exists before submitting
a STOP operation. The patch also includes a test that opens four ledger, and then sequentially
writes to the each ledger and closes it.

This message is automatically generated by JIRA.
You can reply to this email to add a comment to the issue online.

View raw message