[ 
https://issues.apache.org/jira/browse/KAFKA-6209?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Fabien Chaillou updated KAFKA-6209:
-----------------------------------
    Summary: Consumer lag is inconsistent when manually committing offset for 
transactionnal messages  (was: Lag is inconsistent when manually committing 
offset for transactionnal messages)

> Consumer lag is inconsistent when manually committing offset for 
> transactionnal messages
> ----------------------------------------------------------------------------------------
>
>                 Key: KAFKA-6209
>                 URL: https://issues.apache.org/jira/browse/KAFKA-6209
>             Project: Kafka
>          Issue Type: Improvement
>          Components: consumer
>    Affects Versions: 0.11.0.1
>            Reporter: Fabien Chaillou
>
> Hi,
> I'm using kafka consumers paired with kafka producers to have transactionnal 
> consume -> produce -> commit flow.
> I checked the kafka-consumer-groups.sh tool to make sure my consumer were 
> consuming all the messages and it appears that my consumer always have a lag 
> of 1.
> After more digging, I discovered that kafka uses Control records for 
> transaction handling and those records are not returned to the consumer. So 
> if the last record published in the topic is part of a transaction then kafka 
> will add a control record after it and the client code will only be able to 
> send a commit request up to the last control record and the lag will be 
> computed as 1.
> It is not really a bug per se but an inconsistent behavior and I had to dig 
> into the exactly-once KIP (KIP-98) and the consumer code to figure this out.
> I think the issue should at least be documented somewhere as I'm honestly not 
> sure of the proper fix. 
> Thanks for your feedback.
> Fabien



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to