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

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

Ok on your your just redoing what hbasefsck was doing anyways.

Regards the pseudo-code you drew out for me where you show how RZKW relates to 
ZKW relates to ZK, it makes my head hurt.  If the 'Watcher' implementation was 
broken out into a standalone class that might help some but my guess is that 
that'd be big mess to untangle ("...exploded in my hands").

bq. So there's no proof in the code, just that actually all the functions we 
use on the client don't use a watcher.

Excellent

bq. one of the design issue is that there ate two API: you can use directly any 
of the ZKW, RZK, RK object or you can go through the static ZKUtils. May be the 
intermediate solutions lie around this area.

OK.  Any recommendation you can make here having been down deep in this code?  
We should make everyone go via ZKUtils and via ZKAssign, etc., and clean up any 
other errant use of zkw directly?  Would that be good to do?

bq. But when you have a fat client architecture like we have, it makes sense to 
share some global state information, and it scales better when the info is 
pushed vs. pulled.

I'd like to get to the case where we have not watchers -- which this patch is 
finishing -- and then have the above discussion subsequently.  I'd think its 
more scalable if clients do not keep open sessions and keep watchers.  But we 
can talk about that some other time after we've let go at least of watchers.

Let me look at your last patch.
                
> 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, 5573.v4.patch, 
> 5573.v6.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