Hey Guozhang,

I'm late to the game, again, but if it is not too late I'd recommend that
instead
of having a single error code for all failed records, instead provide
per-record
error codes by having an array of [relative_offset, error_code], where
they're
both varint-encoded for space-efficiency.

Regards,
Magnus
just a couple of months late.

Den ons 17 juli 2019 kl 00:18 skrev Guozhang Wang <wangg...@gmail.com>:

> Hello folks,
>
> I've updated the wiki a bit more and here are the changes:
>
> 1. *InvalidRecordException* would inherit from ApiException (which is
> already non-retriable), not KafkaException.
>
> 2. Explained how to set the error codes if there are multiple error
> scenarios on the broker-side.
>
>
> I'm going to start the voting thread soon.
>
> Guozhang
>
>
> On Thu, Jun 20, 2019 at 4:24 PM Guozhang Wang <wangg...@gmail.com> wrote:
>
> > Hi Jun,
> >
> > Thanks for your comments.
> >
> > 1. Yeah I think APIException would not make a distinct call here anymore,
> > and what really matters is the RetriableException. Updated the wiki.
> >
> > 2. Makes sense. Updated the wiki.
> >
> > 3. My current thoughts is to return the first ever hit error for that
> > partition, and also the encoded error_records would only includes the
> > relative offsets of records that hitting that exact error as well.
> >
> >
> > Guozhang
> >
> > On Wed, Jun 12, 2019 at 3:38 PM Jun Rao <j...@confluent.io> wrote:
> >
> >> Hi, Guozhang,
> >>
> >> Thanks for the KIP. A few comments below.
> >>
> >> 1. "If the error_records is not empty and the error code is not API
> >> exception and is not retriable, still retry by creating a new batch ".
> >> InvalidTimestampException
> >> is an ApiException. It seems we should still retry the non-error records
> >> in
> >> the batch.
> >>
> >> 2. error_records => [INT64] : Since we don't have more than 2 billion
> >> messages per batch, we can just use INT32. It would also be useful to
> >> describe what those numbers are. I guess they are the relative offset in
> >> the batch?
> >>
> >> 3. It's possible that a batch of records hit more than one type of error
> >> for different records, which error code and error message should the
> >> server
> >> return to the client?
> >>
> >> Jun
> >>
> >> On Sat, May 11, 2019 at 12:44 PM Guozhang Wang <wangg...@gmail.com>
> >> wrote:
> >>
> >> > Hello everyone,
> >> >
> >> > I'd like to start a discussion thread on this newly created KIP to
> >> improve
> >> > error communication and handling for producer response:
> >> >
> >> >
> >> >
> >>
> https://cwiki.apache.org/confluence/display/KAFKA/KIP-467%3A+Augment+ProduceResponse+error+messaging+for+specific+culprit+records
> >> >
> >> > Thanks,
> >> > --
> >> > -- Guozhang
> >> >
> >>
> >
> >
> > --
> > -- Guozhang
> >
>
>
> --
> -- Guozhang
>

Reply via email to