You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@kafka.apache.org by Evan Huus <ev...@shopify.com> on 2015/03/04 18:44:00 UTC

New Errors in 0.8.2 Protocol

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

Re: New Errors in 0.8.2 Protocol

Posted by Evan Huus <ev...@shopify.com>.
Thanks Joe, keeping documentation in sync with KIPs does seem like a
reasonable process going forward. And I apologize for the confrontational
tone I used to end my original email, that was not called for.

In the mean time, where can I find the answers to my two actual questions?
I think I've figured out InvalidTopicException based on reading some of the
Java code, but I'm not particularly confident in my interpretation.

Thanks,
Evan

On Wed, Mar 4, 2015 at 1:45 PM, Joe Stein <jo...@stealth.ly> wrote:

> Hey Evan, moving forward (so 0.8.3.0 and beyond) the release documentation
> is going to match up more with specific KIP changes
>
> https://cwiki.apache.org/confluence/display/KAFKA/Kafka+Improvement+Proposals
> which elaborated on things like "breaking changes" and "major modifications
> you should adopt before breaking changes happen", "etc". This will be
> helpful not only to know what is changing but a place for discussions prior
> to those changes to happen in a better forum for everyone.
>
> One of the issues we have now (agreed) is that flattened wire protocol
> document doesn't provide the information everyone needs fluidly enough.
>
> ~ Joe Stein
> - - - - - - - - - - - - - - - - -
>
>   http://www.stealth.ly
> - - - - - - - - - - - - - - - - -
>
> On Wed, Mar 4, 2015 at 12:44 PM, Evan Huus <ev...@shopify.com> wrote:
>
> > 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
> >
>

Re: New Errors in 0.8.2 Protocol

Posted by Joe Stein <jo...@stealth.ly>.
Hey Evan, moving forward (so 0.8.3.0 and beyond) the release documentation
is going to match up more with specific KIP changes
https://cwiki.apache.org/confluence/display/KAFKA/Kafka+Improvement+Proposals
which elaborated on things like "breaking changes" and "major modifications
you should adopt before breaking changes happen", "etc". This will be
helpful not only to know what is changing but a place for discussions prior
to those changes to happen in a better forum for everyone.

One of the issues we have now (agreed) is that flattened wire protocol
document doesn't provide the information everyone needs fluidly enough.

~ Joe Stein
- - - - - - - - - - - - - - - - -

  http://www.stealth.ly
- - - - - - - - - - - - - - - - -

On Wed, Mar 4, 2015 at 12:44 PM, Evan Huus <ev...@shopify.com> wrote:

> 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
>