You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@kafka.apache.org by "Jun Rao (JIRA)" <ji...@apache.org> on 2013/05/24 18:56:20 UTC

[jira] [Assigned] (KAFKA-920) zkclient jar 0.2.0 is not compatible with 0.1.0

     [ https://issues.apache.org/jira/browse/KAFKA-920?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Jun Rao reassigned KAFKA-920:
-----------------------------

    Assignee: Jun Rao
    
> zkclient jar 0.2.0 is not compatible with 0.1.0
> -----------------------------------------------
>
>                 Key: KAFKA-920
>                 URL: https://issues.apache.org/jira/browse/KAFKA-920
>             Project: Kafka
>          Issue Type: Bug
>    Affects Versions: 0.8
>            Reporter: Jun Rao
>            Assignee: Jun Rao
>            Priority: Blocker
>         Attachments: kafka-920-downgrade-zkclient.patch
>
>
> Just realized that zkclient 0.2.0 introduced a non-backward compatible api. In 0.1.0, it has
>    public void writeData(java.lang.String path, java.lang.Object datat)
>    public void writeData(java.lang.String path, java.lang.Object datat, int expectedVersion)
> In 0.2.0, they are changed to
>    public Stat writeData(java.lang.String path, java.lang.Object datat)
>    public Stat writeData(java.lang.String path, java.lang.Object datat, int expectedVersion)
> This means that If an application uses Kafka and also drags in another library (X) that depends on zkclient 0.1.0 (and uses "void writeData())", then when they upgrade to Kafka 0.8 consumer (which uses zkclient 0.2.0), their application can't just upgrade to zkclient 0.2.0 since library X's call to "void writeData()" will fail because of the signature change. Since zkclient 0.1.0 is widely used, this issue may affect many applications.
> This non-backward compatible change was introduced by me since I didn't realize it's a signature change then. I am trying to see if zkclient can release a new version that's compatible. If that can't be done in time, we will have to downgrade zkclient to 0.1.0 and add the needed ZK functionality inside Kafka. This is not ideal, but can solve the issue quicker.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira