You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@zookeeper.apache.org by "Benjamin Reed (JIRA)" <ji...@apache.org> on 2010/01/05 18:34:54 UTC
[jira] Updated: (ZOOKEEPER-544) improve client testability - allow
test client to access connected server location
[ https://issues.apache.org/jira/browse/ZOOKEEPER-544?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Benjamin Reed updated ZOOKEEPER-544:
------------------------------------
Resolution: Fixed
Hadoop Flags: [Reviewed]
Status: Resolved (was: Patch Available)
Committed revision 896143.
> improve client testability - allow test client to access connected server location
> ----------------------------------------------------------------------------------
>
> Key: ZOOKEEPER-544
> URL: https://issues.apache.org/jira/browse/ZOOKEEPER-544
> Project: Zookeeper
> Issue Type: Improvement
> Components: c client, java client, tests
> Reporter: Patrick Hunt
> Assignee: Patrick Hunt
> Fix For: 3.3.0
>
> Attachments: ZOOKEEPER-544.patch, ZOOKEEPER-544.patch, ZOOKEEPER-544.patch
>
>
> This came up recently on the user list. If you are developing tests for your zk client you need to be able to access the server that your
> session is currently connected to. The reason is that your test needs to know which server in the quorum to shutdown in order to
> verify you are handling failover correctly. Similar for session expiration testing.
> however we should be careful, we prefer not to expose this to all clients, this is an implementation detail that we typically
> want to hide.
> also we should provide this in both the c and java clients
> I suspect we should add a protected method on ZooKeeper. This will make a higher bar (user will have to subclass) for
> the user to access this method. In tests it's fine, typically you want a "TestableZooKeeper" class anyway. In c we unfortunately
> have less options, we can just rely on docs for now.
> In both cases (c/java) we need to be very very clear in the docs that this is for testing only and to clearly define semantics.
> We should add the following at the same time:
> toString() method to ZooKeeper which includes server ip/port, client port, any other information deemed useful (connection stats like send/recv?)
> the java ZooKeeper is missing "deterministic connection order" that the c client has. this is also useful for testing. again, protected and
> clear docs that this is for testing purposes only!
> Any other things we should expose?
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.