Hadoop QA commented on ZOOKEEPER-400:
-1 overall. Here are the results of testing the latest attachment
against trunk revision 774081.
+1 @author. The patch does not contain any @author tags.
+1 tests included. The patch appears to include 6 new or modified tests.
+1 javadoc. The javadoc tool did not generate any warning messages.
+1 javac. The applied patch does not increase the total number of javac
+1 findbugs. The patch does not introduce any new Findbugs warnings.
+1 release audit. The applied patch does not increase the total number of
release audit warnings.
-1 core tests. The patch failed core unit tests.
+1 contrib tests. The patch passed contrib unit tests.
This message is automatically generated.
> 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.