Hi Oleksiy, Ashish has just created a PR to add some information about how to use KIP-35:
https://github.com/apache/kafka/pull/1395 Maybe you can have a look and leave a comment with areas that are not covered by the first draft. Ismael On Tue, May 17, 2016 at 1:34 PM, Oleksiy Krivoshey <oleks...@gmail.com> wrote: > Given lots of protocol changes in 0.10 compared to 0.9, with many API > methods now having up to 3 possible versions, what is the suggested way for > the client library to coordinate with Kafka brokers? I can see there is > ApiVersions request which is great, but what happens if Kafka cluster > consists of mixed 0.9 and 0.10 brokers (for example during upgrade), should > the library keep and refresh the state of supported APIs for each broker > the same way it does for topic metadata? > Another example is the Metadata request (Api Key 3) which has two versions, > how would the client library in the first place know which version of the > request to send to each of the initial brokers? > > I can't see an easy way for the client library to support for example both > 0.9 and 0.10 without complicated state switches and error handling. I'm not > talking about official Java client, but about other language libraries. > > What would you suggest? Thanks! >