zookeeper-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "ASF GitHub Bot (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (ZOOKEEPER-761) Remove *synchronous* calls from the *single-threaded* C clieant API, since they are documented not to work
Date Sat, 22 Oct 2016 20:55:58 GMT

    [ https://issues.apache.org/jira/browse/ZOOKEEPER-761?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15598481#comment-15598481

ASF GitHub Bot commented on ZOOKEEPER-761:

Github user hanm commented on a diff in the pull request:

    --- Diff: src/c/include/zookeeper.h ---
    @@ -2000,6 +2001,7 @@ ZOOAPI int zoo_set_acl(zhandle_t *zh, const char *path, int version,
      * \ref zoo_acreate, \ref zoo_adelete, \ref zoo_aset).
     ZOOAPI int zoo_multi(zhandle_t *zh, int count, const zoo_op_t *ops, zoo_op_result_t *results);
    --- End diff --

> Remove *synchronous* calls from the *single-threaded* C clieant API, since they are documented
not to work
> ----------------------------------------------------------------------------------------------------------
>                 Key: ZOOKEEPER-761
>                 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-761
>             Project: ZooKeeper
>          Issue Type: Improvement
>          Components: c client
>    Affects Versions: 3.1.1, 3.2.2
>         Environment: RHEL 4u8 (Linux).  The issue is not OS-specific though.
>            Reporter: Jozef Hatala
>            Assignee: Benjamin Reed
>            Priority: Minor
>             Fix For: 3.5.3, 3.6.0
>         Attachments: fix-sync-apis-in-st-adaptor.patch, fix-sync-apis-in-st-adaptor.v2.patch
> Since the synchronous calls are [known|http://hadoop.apache.org/zookeeper/docs/current/zookeeperProgrammers.html#Using+the+C+Client]
to be unimplemented in the single threaded version of the client library libzookeeper_st.so,
I believe that it would be helpful towards users of the library if that information was also
obvious from the header file.
> Anecdotally more than one of us here made the mistake of starting by using the synchronous
calls with the single-threaded library, and we found ourselves debugging it.  An early warning
would have been greatly appreciated.
> 1. Could you please add warnings to the doxygen blocks of all synchronous calls saying
that they are not available in the single-threaded API.  This cannot be safely done with {{#ifdef
THREADED}}, obviously, because the same header file is included whichever client library implementation
one is compiling for.
> 2. Could you please bracket the implementation of all synchronous calls in zookeeper.c
with {{#ifdef THREADED}} and {{#endif}}, so that those symbols are not present in libzookeeper_st.so?

This message was sent by Atlassian JIRA

View raw message