Hi  Gwen/Team

Can you please review the KIP. Hope we have clarified the question you have
regarding proposal.

Thanks
Renuka M

On Mon, Aug 26, 2019 at 3:35 PM Renuka M <renumetuk...@gmail.com> wrote:

> Hi Eric,
>
> We thought about that but we didn't find the strong  enough reason for
> having record itself in Acknowledgement.
> Headers are supposed to carry metadata and that is the reason headers are
> added to producer/consumer records.
> Also we feel having headers information in record metadata is good enough
> to bridge the gap and link the record to its metadata.
> Its simple change since we are not adding any new method signatures.
> Adding new method signatures requires adoption and deprecation of old ones
> to reduce duplication.
> If we get enough votes on adding new method signature, we are open to add
> it.
>
> Thanks
> Renuka M
>
> On Mon, Aug 26, 2019 at 10:54 AM Eric Azama <eazama...@gmail.com> wrote:
>
>> Have you considered adding a new onAcknowledgement method to the
>> ProducerInterceptor with the signature onAcknowledgement(RecordMetadata
>> metadata, Exception exception, ProducerRecord record)? I would also
>> consider adding this to Producer Callbacks as well, since linking a
>> Callback to a specific record currently requires creating a new Callback
>> for every ProducerRecord sent.
>>
>> This seems like a more robust strategy compared to using Headers. Headers
>> don't necessarily contain anything that connects them to the original
>> ProducerRecord, and forcibly including information in the Headers seems
>> like unnecessary bloat. If your goal is to link a RecordMetadata to a
>> specific ProducerRecord, it seems simpler to make sure the original
>> ProducerRecord is accessible at the same time as the RecordMetadata
>>
>> On Mon, Aug 26, 2019 at 10:26 AM Renuka M <renumetuk...@gmail.com> wrote:
>>
>> > Hi Gwen,
>> >
>> > 1.We are not doing any changes on the broker side. This change is only
>> on
>> > Kafka clients library.
>> > 2. RecordMetaData is created by client library while appending record to
>> > ProducerBatch where offset alone returned by broker. Here we are adding
>> > headers to RecordMetaData while creating FutureRecordMetaData to create
>> > context between record and its metadata. I have updated the snippet in
>> KIP
>> > proposed changes in step 3.
>> > 3. As we mentioned in alternatives, client side we can link record and
>> its
>> > metadata using callback, but Interceptors having same RecordMetadata
>> will
>> > not have context on for which record this MetaData belongs to. To fill
>> that
>> > Gap, we are proposing these changes.
>> > Please let us know if we are not clear.
>> >
>> > Thanks
>> > Renuka M
>> >
>> >
>> >
>> >
>> > On Fri, Aug 23, 2019 at 7:08 PM Gwen Shapira <g...@confluent.io> wrote:
>> >
>> > > I am afraid I don't understand the proposal. The RecordMetadata is
>> > > information returned from the broker regarding the record. The
>> > > producer already has the record (including the headers), so why would
>> > > the broker need to send the headers back as part of the metadata?
>> > >
>> > > On Fri, Aug 23, 2019 at 4:22 PM Renuka M <renumetuk...@gmail.com>
>> wrote:
>> > > >
>> > > > Hi All,
>> > > >
>> > > > I am starting this thread to discuss
>> > > >
>> > >
>> >
>> https://cwiki.apache.org/confluence/display/KAFKA/KIP-512%3AAdding+headers+to+RecordMetaData
>> > > > .
>> > > >
>> > > > Please provide the feedback.
>> > > >
>> > > > Thanks
>> > > > Renuka M
>> > >
>> > >
>> > >
>> > > --
>> > > Gwen Shapira
>> > > Product Manager | Confluent
>> > > 650.450.2760 | @gwenshap
>> > > Follow us: Twitter | blog
>> > >
>> >
>>
>

Reply via email to