[ https://issues.apache.org/jira/browse/KAFKA-920?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Jun Rao updated KAFKA-920: -------------------------- Resolution: Fixed Fix Version/s: 0.8 Status: Resolved (was: Patch Available) Thanks for the review. Committed to 0.8. > 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 > Fix For: 0.8 > > Attachments: kafka-920-downgrade-zkclient.patch, > kafka-920-downgrade-zkclient_v2.patch, kafka_920_zkclient_0.3.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