Wenbing Shen created KAFKA-10904: ------------------------------------ Summary: There is a misleading log when the replica fetcher thread handles offsets that are out of range Key: KAFKA-10904 URL: https://issues.apache.org/jira/browse/KAFKA-10904 Project: Kafka Issue Type: Improvement Components: replication Affects Versions: 2.7.0 Reporter: Wenbing Shen Attachments: ReplicaFetcherThread-has-a-misleading-log.png
There is ambiguity in the replica fetcher thread's log. When the fetcher thread is handling with offset out of range, it needs to try to truncate the log. When the end offset of the follower replica is greater than the log start offset of the leader replica and smaller than the end offset of the leader replica, the follower replica will maintain its own fetch offset.However, such cases are processed together with cases where the follower replica's end offset is smaller than the leader replica's start offset, resulting in ambiguities in the log, where the follower replica's fetch offset is reported to reset to the leader replica's start offset.In fact, it still maintains its own fetch offset, so this WARN log is misleading to the user. [2020-11-12 05:30:54,319] WARN (ReplicaFetcherThread-1-1003 kafka.server.ReplicaFetcherThread 70) [ReplicaFetcher replicaId=1 010, leaderId=1003, fetcherId=1] Reset fetch offset for partition eb_raw_msdns-17 from 1933959108 to current leader's start o ffset 1883963889 [2020-11-12 05:30:54,320] INFO (ReplicaFetcherThread-1-1003 kafka.server.ReplicaFetcherThread 66) [ReplicaFetcher replicaId=1 010, leaderId=1003, fetcherId=1] Current offset 1933959108 for partition eb_raw_msdns-17 is out of range, which typically imp lies a leader change. Reset fetch offset to 1933959108 I think it is more accurate to print the WARN log only when follower replica really need to truncate the fetch offset to the leader replica's log start offset. -- This message was sent by Atlassian Jira (v8.3.4#803005)