[ 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