0.8 clients manage groups by connecting directly to zookeeper and implementing shared group management code. There are no broker APIs used.
0.9 clients manage groups using new kafka broker APIs. These clients no longer connect directly to zookeeper. JoinGroupRequest is an 0.9 api. For an 0.8ish reimplementation, you might take a look at pykafka. There is also the old Kafka Java code. I'm not aware of great docs, though. FWIW, there are not many unofficial clients that have implemented group management for 0.8 (unless they are just wrapping the official library running on the jvm). -Dana On May 4, 2016 02:52, "Zaiming Shi" <zmst...@gmail.com> wrote: Hi there! I'm investigating what it means to implement consumer group protocol for 0.8. However all the documents I can find on line is for 0.9 e.g. https://cwiki.apache.org/confluence/display/KAFKA/Kafka+0.9+Consumer+Rewrite+Design Also, in kafka code base, JOIN_GROUP_REQUEST_V0 schema in 0.8 is different from 0.9. Why is the protocol upgraded without bumping the JoinGroupRequest API version number? Anyone have some tips on where to start? Regards -Zaiming