[
https://issues.apache.org/jira/browse/BOOKKEEPER-112?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13219984#comment-13219984
]
[email protected] commented on BOOKKEEPER-112:
----------------------------------------------------------
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/3472/#review5494
-----------------------------------------------------------
bookkeeper-server/src/main/java/org/apache/bookkeeper/client/BookKeeperAdmin.java
<https://reviews.apache.org/r/3472/#comment11911>
Why not use the SafeOrderedExecutor as BookKeeper does?
bookkeeper-server/src/main/java/org/apache/bookkeeper/client/BookKeeperAdmin.java
<https://reviews.apache.org/r/3472/#comment11912>
bitwise &, I guess you meant && here.
bookkeeper-server/src/main/java/org/apache/bookkeeper/client/BookKeeperAdmin.java
<https://reviews.apache.org/r/3472/#comment11913>
I dont like boolean flags like readForward being passed to the constructor
here. I think it would be better to have a class called
SingleFragmentCallbackWithForwardRead which inherits from
SingleFragmentCallback. You can then overload processResult on that.
- Ivan
On 2012-02-28 11:09:19, Sijie Guo wrote:
bq.
bq. -----------------------------------------------------------
bq. This is an automatically generated e-mail. To reply, visit:
bq. https://reviews.apache.org/r/3472/
bq. -----------------------------------------------------------
bq.
bq. (Updated 2012-02-28 11:09:19)
bq.
bq.
bq. Review request for bookkeeper.
bq.
bq.
bq. Summary
bq. -------
bq.
bq. Bookie recovery updates the ledger metadata in zookeeper. LedgerHandle
will not get notified of this update, so it will try to write out its own
ledger metadata, only to fail with KeeperException.BadVersion. This effectively
fences all write operations on the LedgerHandle (close and addEntry). close
will fail for obvious reasons. addEntry will fail once it gets to the failed
bookie in the schedule, tries to write, fails, selects a new bookie and tries
to update ledger metadata.
bq.
bq. Update Line 605, testSyncBookieRecoveryToRandomBookiesCheckForDupes(),
when done
bq. Also, uncomment addEntry in
TestFencing#testFencingInteractionWithBookieRecovery()
bq.
bq.
bq. This addresses bug BOOKKEEPER-112.
bq. https://issues.apache.org/jira/browse/BOOKKEEPER-112
bq.
bq.
bq. Diffs
bq. -----
bq.
bq.
bookkeeper-server/src/main/java/org/apache/bookkeeper/client/BookKeeperAdmin.java
37623dc
bq.
bookkeeper-server/src/main/java/org/apache/bookkeeper/client/LedgerHandle.java
a94a0e5
bq.
bookkeeper-server/src/main/java/org/apache/bookkeeper/client/LedgerMetadata.java
b403aa1
bq.
bookkeeper-server/src/main/java/org/apache/bookkeeper/client/LedgerRecoveryOp.java
c67a79c
bq.
bookkeeper-server/src/main/java/org/apache/bookkeeper/client/PendingReadOp.java
29070eb
bq.
bookkeeper-server/src/test/java/org/apache/bookkeeper/client/BookieRecoveryTest.java
99258ac
bq.
bookkeeper-server/src/test/java/org/apache/bookkeeper/client/TestFencing.java
015e4e4
bq.
bookkeeper-server/src/test/java/org/apache/bookkeeper/test/BaseTestCase.java
dada67a
bq.
bq. Diff: https://reviews.apache.org/r/3472/diff
bq.
bq.
bq. Testing
bq. -------
bq.
bq.
bq. Thanks,
bq.
bq. Sijie
bq.
bq.
> Bookie Recovery on an open ledger will cause LedgerHandle#close on that
> ledger to fail
> --------------------------------------------------------------------------------------
>
> Key: BOOKKEEPER-112
> URL: https://issues.apache.org/jira/browse/BOOKKEEPER-112
> Project: Bookkeeper
> Issue Type: Bug
> Reporter: Flavio Junqueira
> Assignee: Sijie Guo
> Fix For: 4.1.0
>
> Attachments: BK-112.patch, BOOKKEEPER-112.patch,
> BOOKKEEPER-112.patch_v2, BOOKKEEPER-112.patch_v3, BOOKKEEPER-112.patch_v4
>
>
> Bookie recovery updates the ledger metadata in zookeeper. LedgerHandle will
> not get notified of this update, so it will try to write out its own ledger
> metadata, only to fail with KeeperException.BadVersion. This effectively
> fences all write operations on the LedgerHandle (close and addEntry). close
> will fail for obvious reasons. addEntry will fail once it gets to the failed
> bookie in the schedule, tries to write, fails, selects a new bookie and tries
> to update ledger metadata.
> Update Line 605, testSyncBookieRecoveryToRandomBookiesCheckForDupes(), when
> done
> Also, uncomment addEntry in
> TestFencing#testFencingInteractionWithBookieRecovery()
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira