[ 
https://issues.apache.org/jira/browse/BOOKKEEPER-294?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13405041#comment-13405041
 ] 

Ivan Kelly commented on BOOKKEEPER-294:
---------------------------------------

Patch looks good. However, could you move the Watcher out of the if () clause. 
i.e.
{code}
Watcher w = new Watcher() {
    @Override
    public void process(WatchedEvent event) {
        // Check for prev znode deletion. Connection expiration is
        // not handling, since bookie has logic to shutdown.
        if (EventType.NodeDeleted == event.getType()) {
             prevNodeLatch.countDown();
        }
    }
}
if (null != zk.exists(zkBookieRegPath,w)) {
    LOG.info("Previous bookie registration znode: "
             + zkBookieRegPath
             + " exists, so waiting zk sessiontimeout: "
             + conf.getZkTimeout() + "ms for znode deletion");
    // waiting for the previous bookie reg znode deletion
    if (!prevNodeLatch.await(conf.getZkTimeout(),
                             TimeUnit.MILLISECONDS)) {
        throw new KeeperException.NodeExistsException(
            zkBookieRegPath);
    }
}
{code}
As it is, it makes the flow of the method harder to follow.
                
> Not able to start the bookkeeper before the ZK session timeout.
> ---------------------------------------------------------------
>
>                 Key: BOOKKEEPER-294
>                 URL: https://issues.apache.org/jira/browse/BOOKKEEPER-294
>             Project: Bookkeeper
>          Issue Type: Bug
>          Components: bookkeeper-server
>    Affects Versions: 4.1.0
>            Reporter: Gopinathan A
>            Assignee: Rakesh R
>             Fix For: 4.2.0, 4.1.1
>
>         Attachments: BOOKKEEPER-294.1.patch, BOOKKEEPER-294.2.patch, 
> BOOKKEEPER-294.3.patch, BOOKKEEPER-294.4.patch, BOOKKEEPER-294.5.patch, 
> BOOKKEEPER-294.6.patch, BOOKKEEPER-294.patch, BOOKKEEPER-294.patch
>
>
> Not able to start the bookkeeper before the ZK session timeout.
> Here i killed the bookie and started again.
> {noformat}
> 2012-06-12 20:00:25,220 - INFO  [main:LedgerCache@65] - openFileLimit is 900, 
> pageSize is 8192, pageLimit is 456781
> 2012-06-12 20:00:25,238 - ERROR [main:Bookie@453] - ZK exception registering 
> ephemeral Znode for Bookie!
> org.apache.zookeeper.KeeperException$NodeExistsException: KeeperErrorCode = 
> NodeExists for /ledgers/available/10.18.40.216:3181
>       at org.apache.zookeeper.KeeperException.create(KeeperException.java:119)
>       at org.apache.zookeeper.KeeperException.create(KeeperException.java:51)
>       at org.apache.zookeeper.ZooKeeper.create(ZooKeeper.java:778)
>       at org.apache.bookkeeper.bookie.Bookie.registerBookie(Bookie.java:450)
>       at org.apache.bookkeeper.bookie.Bookie.<init>(Bookie.java:348)
>       at org.apache.bookkeeper.proto.BookieServer.<init>(BookieServer.java:64)
>       at org.apache.bookkeeper.proto.BookieServer.main(BookieServer.java:249)
> {noformat}

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

        

Reply via email to