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

Kirk True updated KAFKA-16155:
------------------------------
    Fix Version/s: 3.8.0

> Investigate testAutoCommitIntercept
> -----------------------------------
>
>                 Key: KAFKA-16155
>                 URL: https://issues.apache.org/jira/browse/KAFKA-16155
>             Project: Kafka
>          Issue Type: Bug
>          Components: clients, consumer
>            Reporter: Lucas Brutschy
>            Priority: Major
>              Labels: consumer-threading-refactor
>             Fix For: 3.8.0
>
>
> Even with KAFKA-15942, the test PlaintextConsumerTest.testAutoCommitIntercept 
> flakes on the the initial setup (before using interceptors, so interceptors 
> are unrelated here, except for being used later in the test).
> The problem is that we are seeking two topic partitions to offset 10 and 20, 
> respectively, but when we commit, we seem to have lost one of the offsets, 
> likely due to a race condition. 
> When I output `subscriptionState.allConsumed` repeatedly, I get this output:
> {noformat}
> allConsumed: {topic-0=OffsetAndMetadata{offset=100, leaderEpoch=0, 
> metadata=''}, topic-1=OffsetAndMetadata{offset=0, leaderEpoch=null, 
> metadata=''}} 
> seeking topic-0 to FetchPosition{offset=10, offsetEpoch=Optional.empty, 
> currentLeader=LeaderAndEpoch{leader=Optional[localhost:58298 (id: 0 rack: 
> null)], epoch=0}} 
> seeking topic-1 to FetchPosition{offset=20, offsetEpoch=Optional.empty, 
> currentLeader=LeaderAndEpoch{leader=Optional[localhost:58301 (id: 1 rack: 
> null)], epoch=0}} 
> allConsumed: {topic-0=OffsetAndMetadata{offset=10, leaderEpoch=null, 
> metadata=''}, topic-1=OffsetAndMetadata{offset=20, leaderEpoch=null, 
> metadata=''}} 
> allConsumed: {topic-0=OffsetAndMetadata{offset=10, leaderEpoch=null, 
> metadata=''}} 
> allConsumed: {topic-0=OffsetAndMetadata{offset=10, leaderEpoch=null, 
> metadata=''}, topic-1=OffsetAndMetadata{offset=0, leaderEpoch=null, 
> metadata=''}}
> autocommit start {topic-0=OffsetAndMetadata{offset=10, leaderEpoch=null, 
> metadata=''}, topic-1=OffsetAndMetadata{offset=0, leaderEpoch=null, 
> metadata=''}}
> {noformat}
> So we after we seek to 10 / 20, we lose one of the offsets, maybe because we 
> haven't reconciled the assignment yet. Later, we get the second topic 
> partition assigned, but the offset is initialized to 0.
> We should investigate whether this can be made more like the behavior in the 
> original consumer.



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

Reply via email to