You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@zookeeper.apache.org by "Flavio Paiva Junqueira (JIRA)" <ji...@apache.org> on 2009/05/13 00:03:45 UTC

[jira] Assigned: (ZOOKEEPER-400) Issues with procedure to close ledger

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

Flavio Paiva Junqueira reassigned ZOOKEEPER-400:
------------------------------------------------

    Assignee: Flavio Paiva Junqueira

> Issues with procedure to close ledger
> -------------------------------------
>
>                 Key: ZOOKEEPER-400
>                 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-400
>             Project: Zookeeper
>          Issue Type: Bug
>          Components: contrib-bookkeeper
>            Reporter: Flavio Paiva Junqueira
>            Assignee: Flavio Paiva Junqueira
>            Priority: Critical
>         Attachments: ZOOKEEPER-400.patch
>
>
> When running a few experiments with BookKeeper, I found a couple of issues with closing a ledger:
> * On ClientCBWorker::run(), we should call setAddConfirmed before invoking the callback method. Otherwise, it is possible that an application closes a ledger before ClientCBWorker modifies the last confirmed operation, and the value written to ZooKeeper won't be the last one written;
> * LedgerHandle should write the last add confirmed instead of the last counter. The last attribute counts the operations issued, and we use it to determine the id of the next entry. If an application calls close upon receiving all callbacks, then with the previous modification, the last confirmed add must be equal to (last-1). However, if an application invokes close before receiving all callbacks, the ledger may be left in an inconsistent state because the last entry written to ZooKeeper may be an operation that hasn't completed yet. 
> Although the modifications required are simple, they are important.

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