You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@zookeeper.apache.org by "Mahadev konar (JIRA)" <ji...@apache.org> on 2011/07/27 17:31:10 UTC

[jira] [Updated] (ZOOKEEPER-837) cyclic dependency ClientCnxn, ZooKeeper

     [ https://issues.apache.org/jira/browse/ZOOKEEPER-837?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Mahadev konar updated ZOOKEEPER-837:
------------------------------------

    Fix Version/s:     (was: 3.4.0)
                   3.5.0

Moving this out to 3.5 for cleanup.

> cyclic dependency ClientCnxn, ZooKeeper
> ---------------------------------------
>
>                 Key: ZOOKEEPER-837
>                 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-837
>             Project: ZooKeeper
>          Issue Type: Sub-task
>    Affects Versions: 3.3.1
>            Reporter: Patrick Datko
>            Assignee: Thomas Koch
>             Fix For: 3.5.0
>
>         Attachments: ZOOKEEPER-837.patch, ZOOKEEPER-837.patch, ZOOKEEPER-837.patch, ZOOKEEPER-837.patch, ZOOKEEPER-837.patch
>
>
> ZooKeeper instantiates ClientCnxn in its ctor with this and therefor builds a 
> cyclic dependency graph between both objects. This means, you can't have the 
> one without the other. So why did you bother do make them to separate classes 
> in the first place?
> ClientCnxn accesses ZooKeeper.state. State should rather be a property of 
> ClientCnxn. And ClientCnxn accesses zooKeeper.get???Watches() in its method 
> primeConnection(). I've not yet checked, how this dependency should be 
> resolved better.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira