[
https://issues.apache.org/jira/browse/BOOKKEEPER-704?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14052312#comment-14052312
]
Ivan Kelly commented on BOOKKEEPER-704:
---------------------------------------
{quote}
I don't want to change the zookeeper class reference everywhere in bookkeeper.
So I choose a simple wrapper extending ZooKeeper client interface.
{quote}
It's quite a easy mechanical change to change the zookeeper reference
everywhere if the ZooKeeperClient interface apes the original zookeeper
interface. It could probably be done with a line or two of sed. Having two
different cases, one that only gets exercised when a session expiry occurs will
lead to the second case, which is the new code, being rarely exercised and any
issues that may exist persisting a long time. That said, changing the zookeeper
references could be done in another change. I'm fine with this patch going in
as is, though I still need to give it a full review.
{quote}
I think we basically just need be able to retry zookeeper calls on both
synchronous and asynchronous ways. we actually don't need a lot of frameworks
provided by curator.
And also, I just glanced the Client you provided. I don't know how curator
handles retrying for asynchronous calls and it seems people need to explicitly
call RetryLoop for any zookeeper calls, which means we need to rewrite how
bookkeeper use zookeeper in curator way. This is too big a change.
Based on those concerns, I would prefer a thin wrapper doing this, without
changing a lot of code in bookkeeper.
{quote}
Sure.
> reconnectable zookeeper client wrapper
> --------------------------------------
>
> Key: BOOKKEEPER-704
> URL: https://issues.apache.org/jira/browse/BOOKKEEPER-704
> Project: Bookkeeper
> Issue Type: Sub-task
> Components: bookkeeper-client, bookkeeper-server
> Reporter: Sijie Guo
> Assignee: Sijie Guo
> Fix For: 4.4.0
>
> Attachments: BOOKKEEPER-704.diff
>
>
> create a reconnectable zookkeeper client wrapper to handle session expire
> event.
--
This message was sent by Atlassian JIRA
(v6.2#6252)