This is an automated email from the ASF dual-hosted git repository.

sijie pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/bookkeeper.git


The following commit(s) were added to refs/heads/master by this push:
     new 7580ce9  ZKLedgerManager.writeLedgerMetadata should return appropriate 
error.
7580ce9 is described below

commit 7580ce9dd8449f777e35b580bb6786f12d7703bc
Author: cguttapalem <[email protected]>
AuthorDate: Wed May 2 23:38:10 2018 -0700

    ZKLedgerManager.writeLedgerMetadata should return appropriate error.
    
    Descriptions of the changes in this PR:
    
    ZKLedgerManager.writeLedgerMetadata should return
    NoSuchLedgerExistsException error in the case it
    gets KeeperException.Code.NONODE rc value from ZK.
    ZKLedgerManager.removeLedgerMetadata does that as well.
    
    Author: cguttapalem <[email protected]>
    
    Reviewers: Enrico Olivelli <[email protected]>, Sijie Guo 
<[email protected]>
    
    This closes #1382 from reddycharan/abstractzkledgermanagerissue
---
 .../main/java/org/apache/bookkeeper/meta/AbstractZkLedgerManager.java  | 3 +++
 1 file changed, 3 insertions(+)

diff --git 
a/bookkeeper-server/src/main/java/org/apache/bookkeeper/meta/AbstractZkLedgerManager.java
 
b/bookkeeper-server/src/main/java/org/apache/bookkeeper/meta/AbstractZkLedgerManager.java
index 3115f12..dbddfc1 100644
--- 
a/bookkeeper-server/src/main/java/org/apache/bookkeeper/meta/AbstractZkLedgerManager.java
+++ 
b/bookkeeper-server/src/main/java/org/apache/bookkeeper/meta/AbstractZkLedgerManager.java
@@ -443,6 +443,9 @@ public abstract class AbstractZkLedgerManager implements 
LedgerManager, Watcher
                     // update metadata version
                     metadata.setVersion(zv.setLongVersion(stat.getVersion()));
                     cb.operationComplete(BKException.Code.OK, null);
+                } else if (KeeperException.Code.NONODE.intValue() == rc) {
+                    LOG.warn("Ledger node does not exist in ZooKeeper: 
ledgerId={}", ledgerId);
+                    
cb.operationComplete(BKException.Code.NoSuchLedgerExistsException, null);
                 } else {
                     LOG.warn("Conditional update ledger metadata failed: {}", 
KeeperException.Code.get(rc));
                     cb.operationComplete(BKException.Code.ZKException, null);

-- 
To stop receiving notification emails like this one, please contact
[email protected].

Reply via email to