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

stack commented on HBASE-5573:
------------------------------

ZooKeeperHBaseNodes => ReadOnlyZooKeeper?

bq. The client is supposed to wait if the root location znode is not yet 
created in ZK.

Does it have to?  We're talking of removing -ROOT- for 0.96?  You say you 
converted it to a loop?  In the loop it just reads zk looking for root to show 
up?  That seems fine.

bq, As HConnectionImplementation now uses a simple connection and not a 
Watcher, the deprecated interface (that returns a ZooKeeperWatcher) cannot 
reuse the internal connection to ZK, but must be duplicated.

This seems fine too.  You mean that the simple connection and the watcher are 
distinct?  Thats ok.  We only make the watcher if someone asks for it?

The below is crazy:

{code}
In trunk, the current dependencies are:
RecovableZooKeeper depends(contains) on ZooKeeper
ZooKeeper depends(contains) on ZooKeeperWatcher
ZooKeeperWatcher depends(contains) RecovableZooKeeper
ZKUtils depends(uses) RecovableZooKeeper and ZooKeeperWatcher
{code}

This is before your patch?

bq. ZooKeeper depends(contains) on ZooKeeperWatcher

I don't understand? How does zk contain a zkw?  That seems wonky.

bq. ZKUtils depends(uses) RecovableZooKeeper and ZooKeeperWatcher

It should only use rzk?  Now zkw.

bq.  To be able to reuse it, what's happening when using a ZooKeeperHBaseNodes 
is that the underlying ZooKeeperWatcher is actually null.

Sorry.  Why does ReadOnlyZooKeeper have to have a zkw?  Because rzk has one?  
Can you fix that?

Good stuff N.


                
> 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

        

Reply via email to