You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@zookeeper.apache.org by "Patrick Hunt (JIRA)" <ji...@apache.org> on 2010/07/29 19:39:16 UTC
[jira] Commented: (ZOOKEEPER-829) Add /zookeeper/sessions/* to
allow inspection/manipulation of client sessions
[ https://issues.apache.org/jira/browse/ZOOKEEPER-829?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12893729#action_12893729 ]
Patrick Hunt commented on ZOOKEEPER-829:
----------------------------------------
Implementing as part of /zookeeper (a znode) allows us to easily add this feature (vs changing the wire protocol). Integration with existing zk clients/libs/bindings/etc... will be simplified. Also we get ACLs in the bargain.
Note that this also solves a lot of problems wrt client side testing - session expiration and disconnection will both be easy features to provide.
I suggest we use commands like "expire" and "disconnect" rather than "kill"
Another idea comes to mind - we might have /zookeeper/sessions/<id> and also /zookeeper/<serverid>/sessions/<id>, this second option would allow for a "supervisory" process to monitor load on the servers and forcibly disconnect clients, thereby redistributing the load. This has been a bane for us (equitable load distribution on the servers) and a feature like this seems like a great solution.
> Add /zookeeper/sessions/* to allow inspection/manipulation of client sessions
> -----------------------------------------------------------------------------
>
> Key: ZOOKEEPER-829
> URL: https://issues.apache.org/jira/browse/ZOOKEEPER-829
> Project: Zookeeper
> Issue Type: New Feature
> Components: server
> Reporter: Todd Lipcon
>
> For some use cases in HBase (HBASE-1316 in particular) we'd like the ability to forcible expire someone else's ZK session. Patrick and I discussed on IRC and came up with an idea of creating nodes in /zookeeper/sessions/<session id> that can be read in order to get basic stats about a session, and written in order to manipulate one. The manipulation we need in HBase is the ability to write a command like "kill", but others might be useful as well.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.