[
https://issues.apache.org/jira/browse/HBASE-5573?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13234413#comment-13234413
]
nkeywal commented on HBASE-5573:
--------------------------------
bq; This seems way broke Nicolas: "zk.ZooKeeper contains (hb.ZooKeeperWatcher
implements zk.ZooKeeper)"
I wanted to say that in ZK API, you want give a Watcher as a parameter to the
ZooKeeper object. In HBase, this watcher is the ZooKeeperWatcher. And this
ZooKeeperWatcher contains the RecoverableZK that contains the ZooKeeper
object, so we have a loop.
bq. Is ZKW doing everything, not just Watching? If so, would fixing this help?
Yes it does everything. With the split there is now a new object when we just
want to read/write.
For the name, let's go for NoWatchZK.
I'm currently testing the patch. There is still an issue with stuff like
ZKAssign.getData: it sets a watcher, but is it really needed?
> Replace client ZooKeeper watchers by simple ZooKeeper reads
> -----------------------------------------------------------
>
> Key: HBASE-5573
> URL: https://issues.apache.org/jira/browse/HBASE-5573
> Project: HBase
> Issue Type: Improvement
> Components: client, zookeeper
> Affects Versions: 0.96.0
> Reporter: nkeywal
> Assignee: nkeywal
> Priority: Minor
> Attachments: 5573.v1.patch, 5573.v2.patch
>
>
> Some code in the package needs to read data in ZK. This could be done by a
> simple read, but is actually implemented with a watcher. This holds ZK
> resources.
> Fixing this could also be an opportunity to remove the need for the client to
> provide the master address and port.
--
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