Hey all, it seems that 0.8.2 has added a handful more errors to the
protocol which are not yet reflected on the wiki page [1]. Specifically,
[2] seems to indicate that codes 17-20 now have associated meanings.

My questions are:
- Which of these are exposed "publicly"? (for example, the existing error
13 is only ever internal to the brokers, so is irrelevant for third-party
clients to know about, are any of the new ones like that?)
- When (if ever) is InvalidTopicException returned, and what is it for that
UnknownTopicOrPartition couldn't be used?

I would also note that this is the *second* issue I've come across where
the protocol specification is not up-to-date with the protocol actually
used by the 0.8.2 brokers. That specification is what I, as developer of
third-party language bindings, rely on in order to be compatible with Kafka
proper. If you want a healthy community of third-party bindings and
clients, you *have* to do a better job of keeping that documentation up to
date, this is getting really frustrating. Fortunately none of these issues
have caused data loss for us. Yet.

Thanks,
Evan

[1]
https://cwiki.apache.org/confluence/display/KAFKA/A+Guide+To+The+Kafka+Protocol
(currently down for maintenance apparently)
[2]
https://github.com/apache/kafka/blob/ee1267b127f3081db491fa1bf9a287084c324e36/clients/src/main/java/org/apache/kafka/common/protocol/Errors.java#L46-L49

Reply via email to