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 2011/09/06 18:20:10 UTC
[jira] [Commented] (ZOOKEEPER-1167) C api lacks synchronous version
of sync() call.
[ https://issues.apache.org/jira/browse/ZOOKEEPER-1167?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13098132#comment-13098132 ]
Patrick Hunt commented on ZOOKEEPER-1167:
-----------------------------------------
to guarantee consistency btw two clients, yes. but typically this is not necessary - only when clients are also communicating via some method other than just ZK.
re adding zoo_sync, well then it would be inconsistent with the java client. ;-) I think if you added such a thing it should not return until the callback was called - similar to all the other ZK sync methods.
> C api lacks synchronous version of sync() call.
> -----------------------------------------------
>
> Key: ZOOKEEPER-1167
> URL: https://issues.apache.org/jira/browse/ZOOKEEPER-1167
> Project: ZooKeeper
> Issue Type: Bug
> Components: c client
> Affects Versions: 3.3.3
> Reporter: Nicholas Harteau
>
> Reading through the source, the C API implements zoo_async() which is the zookeeper sync() method implemented in the multithreaded/asynchronous C API. It doesn't implement anything equivalent in the non-multithreaded API.
> I'm not sure if this was oversight or intentional, but it means that the non-multithreaded API can't guarantee consistent client views on critical reads.
> The zkperl bindings depend on the synchronous, non-multithreaded API so also can't call sync() currently.
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira