[
https://issues.apache.org/jira/browse/BOOKKEEPER-294?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13401270#comment-13401270
]
Rakesh R commented on BOOKKEEPER-294:
-------------------------------------
@Flavio
bq.After a comment from Ivan, I thought we had agreed to not delete the znode
lock. Have I misunderstood it?
As I understand, the reason why Ivan disagrees due to the following issue:
bq.The solution in the patch is actually broken. Bookie#start is called before
NIOServerFactory#start, which means that if you try to start a bookie on a
machine where the bookie is already running, the running bookie's availability
znode is deleted, the new bookie creates one, the new bookie tries to start
NIOServerFactory and fails as the socket is already bound, so crashes, taking
it's availability znode with it. The initial bookie is now running, without a
availability znode, so noone can contact it.
This problem is resolved after the swapping of NIO and bookie#start. Now the
chance of corrupting already running bookie is no more. So is the reason I
continued with znode deletion during bookie#registration.
Hi Ivan, please correct me if I interpreted your comments wrongly.
> 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.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