You are viewing a plain text version of this content. The canonical link for it is here.
Posted to jira@kafka.apache.org by "Luke Chen (Jira)" <ji...@apache.org> on 2022/07/08 09:25:00 UTC

[jira] [Commented] (KAFKA-14053) Transactional producer should bump the epoch when a batch encounters delivery timeout

    [ https://issues.apache.org/jira/browse/KAFKA-14053?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17564186#comment-17564186 ] 

Luke Chen commented on KAFKA-14053:
-----------------------------------

[~hachikuji] , I'd like to hear your opinion about this. Thanks.

> Transactional producer should bump the epoch when a batch encounters delivery timeout
> -------------------------------------------------------------------------------------
>
>                 Key: KAFKA-14053
>                 URL: https://issues.apache.org/jira/browse/KAFKA-14053
>             Project: Kafka
>          Issue Type: Bug
>            Reporter: Daniel Urban
>            Assignee: Daniel Urban
>            Priority: Major
>
> When a batch fails due to delivery timeout, it is possible that the batch is still in-flight. Due to underlying infra issues, it is possible that an EndTxnRequest and a WriteTxnMarkerRequest is processed before the in-flight batch is processed on the leader. This can cause transactional batches to be appended to the log after the corresponding abort marker.
> This can cause the LSO to be infinitely blocked in the partition, or can even violate processing guarantees, as the out-of-order batch can become part of the next transaction.
> Because of this, the producer should skip aborting the partition, and bump the epoch to fence the in-flight requests.
>  
> More detail can be found here: 
> [https://lists.apache.org/thread/8d2oblsjtdv7740glc37v79f0r7p99dp]
>  



--
This message was sent by Atlassian Jira
(v8.20.10#820010)