Aniruddha created BOOKKEEPER-400:
------------------------------------

             Summary: Ledger entry not found in any of the bookies in the 
ensemble responsible for that entry.
                 Key: BOOKKEEPER-400
                 URL: https://issues.apache.org/jira/browse/BOOKKEEPER-400
             Project: Bookkeeper
          Issue Type: Bug
          Components: bookkeeper-client
            Reporter: Aniruddha
         Attachments: clean.log.gz

Detailed discussion at 
http://mail-archives.apache.org/mod_mbox/zookeeper-bookkeeper-dev/201209.mbox/%3cCAOLhyDQzrmeOHmTxzPikeAqJ7pZUn0=vHfd=gc1srmtuye5...@mail.gmail.com%3e

We had an internal discussion about this. From BOOKKEEPER-337, it seems that 
handleBookieFailure could be invoked in parallel by a thread other the one that 
calls LedgerHandle#sendAddSuccessCallbacks. The values updated by 
handleBookieFailure might not be visible to the thread running 
sendAddSuccessCallbacks because the fields are not volatile and this might have 
caused our bad state. 

BK-337 synchronizes access to metadata.addEnsemble() and we believe this would 
make this scenario very improbable. 

A long term fix might be to make LedgerMetadata immutable since it is rarely 
updated. 

--
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

Reply via email to