You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@zookeeper.apache.org by "Sam Mikes (Jira)" <ji...@apache.org> on 2021/02/15 14:51:00 UTC

[jira] [Created] (ZOOKEEPER-4210) Zookeeper c client does not propagate error on opportunistic async send

Sam Mikes created ZOOKEEPER-4210:
------------------------------------

             Summary: Zookeeper c client does not propagate error on opportunistic async send
                 Key: ZOOKEEPER-4210
                 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-4210
             Project: ZooKeeper
          Issue Type: Bug
          Components: c client
    Affects Versions: 3.6.2, 3.4.14, 3.7.0
         Environment: Observed on Linux 3.x 4.x 5.x Centos distributions.
            Reporter: Sam Mikes


When an async operation is performed in the C client, the client will attempt to send the command to the server if this would not block.

When this send reports an error (eg: EPIPE) this is reported up to the async message, but the return code is not stored and checked, making it impossible for the user of the c client library to identify this case.

This can eventually trigger an assertion in some IO libraries, eg libev, because the file descriptor libev is watching is not associated with a valid stream. 



--
This message was sent by Atlassian Jira
(v8.3.4#803005)