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 2021/02/19 07:23:00 UTC
[jira] [Commented] (KAFKA-12261) Splitting partition causes message
loss for consumers with auto.offset.reset=latest
[ https://issues.apache.org/jira/browse/KAFKA-12261?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17286892#comment-17286892 ]
Luke Chen commented on KAFKA-12261:
-----------------------------------
I think we should document it, but not change the default setting to the *earlist*
> Splitting partition causes message loss for consumers with auto.offset.reset=latest
> -----------------------------------------------------------------------------------
>
> Key: KAFKA-12261
> URL: https://issues.apache.org/jira/browse/KAFKA-12261
> Project: Kafka
> Issue Type: Improvement
> Affects Versions: 2.7.0
> Reporter: Haruki Okada
> Assignee: Luke Chen
> Priority: Minor
>
> As of now, auto.offset.reset of ConsumerConfig is "latest" by default.
>
> This could be a pitfall that causes message delivery loss when we split topic's partitions like below:
> Say we have a topic-X which have only 1 partition.
> # split topic-X to 2 partitions by kafka-topics.sh --alter --topic topic-X --partitions 2 (topic-X-1 is added)
> # producer knows that new partitions are added by refreshing metadata. starts to produce to topic-X-1
> # bit later, consumer knows that new partitions are added and triggering consumer rebalance, then starts consuming topic-X-1
> *
> ** upon starting consumption, it resets its offset to log-end-offset
> If the producer sent several records before 3, they could be not-delivered to the consumer.
>
>
> This behavior isn't preferable in most cases, so it should be documented in AUTO_OFFSET_RESET_DOC at least.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)