[
https://issues.apache.org/jira/browse/ZOOKEEPER-837?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12975736#action_12975736
]
Thomas Koch commented on ZOOKEEPER-837:
---------------------------------------
Hi Henry,
thank you very much for looking into this! This issue is independent from
ZOOKEEPER-823. Yes, please commit it!
I've two independent personal roadmaps:
- ZOOKEEPER-823: Needs a lot of thinking, testing and maybe some cleanup to
find the concurrency problems.
- ZOOKEEPER-911: Needs a lot of tiny, backwards compatible steps which needs to
be reviewed by the team.
This patch leads towards ZOOKEEPER-911.
> 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.4.0
>
> Attachments: 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.
-
You can reply to this email to add a comment to the issue online.