You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@zookeeper.apache.org by "Steven McDonald (JIRA)" <ji...@apache.org> on 2019/03/15 11:39:00 UTC

[jira] [Created] (ZOOKEEPER-3314) Document the possibility of MultiCallback receiving a null pointer

Steven McDonald created ZOOKEEPER-3314:
------------------------------------------

             Summary: Document the possibility of MultiCallback receiving a null pointer
                 Key: ZOOKEEPER-3314
                 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-3314
             Project: ZooKeeper
          Issue Type: Improvement
    Affects Versions: 3.4.13, 3.4.12, 3.5.4, 3.4.11, 3.5.3, 3.5.2, 3.5.1, 3.5.0, 3.4.10, 3.4.9, 3.4.8, 3.4.7
            Reporter: Steven McDonald
         Attachments: 0001-Document-the-case-where-opResults-is-null-in-multi-c.patch

A {{MultiCallback}} can receive a null pointer on failure, rather than a list of {{org.apache.zookeeper.OpResult.ErrorResult}} as documented. This is evident from [the implementation|https://github.com/apache/zookeeper/blob/master/zookeeper-server/src/main/java/org/apache/zookeeper/ClientCnxn.java#L689].

This causes NullPointerExceptions in Kafka 2.1.x (see [KAFKA-7898|https://issues.apache.org/jira/browse/KAFKA-7898]). Kafka 2.0.x does not use the async multi interface, and Kafka 2.2.x handles the null pointer case.

However, this is enough of a hazard that it should be documented. I have a patch for that which I will try to attach in a moment (JIRA won't allow me to attach it now for some reason).



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)