linkedin / linkedin/Burrow

Burrow stops emitting metric after Kafka upgrade

Open
#827 2 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Go
Stars
4k
Forks
818
Avg merge
1h 14m
Merged PRs (30d)
1

Description

Burrow Version: 1.8.0

Issue:
After upgrading Kafka from version 3.6.x to 3.7.x, we observed that the Burrow service stopped emitting the consumer lag metric. Restarting the Burrow service temporarily resolved the issue.

Logs:
The following warnings and errors were observed in the Burrow logs:

{"level":"error","ts":1720927697.84136,"msg":"failed to fetch offsets from broker","type":"module","coordinator":"cluster","class":"kafka","name":"local-cluster","sarama_error":"EOF","broker":7}
.......
{"level":"warn","ts":1720927137.8406005,"msg":"error in OffsetResponse","type":"module","coordinator":"cluster","class":"kafka","name":"local-cluster","sarama_error":"kafka server: Tried to send a message to a replica that is not the leader for some partition. Your metadata is out of date","broker":3,"topic":"kafka-connect-offsets.internal","partition":4}

The Kafka upgrade was performed in a rolling fashion, one broker at a time. While communication disruptions were expected with the upgrading broker, others should have been available.

Burrow Configuration:
Here is the configuration we are using:

[client-profile.profile]
kafka-version = "3.6.1"

[cluster.local-cluster]
client-profile = "profile"
class-name = "kafka"
topic-refresh = 60
offset-refresh = 10
groups-reaper-refresh = 10

[consumer.local-kafka]
class-name = "kafka"
cluster = "local-cluster"

[consumer.local-kafka-zk]
class-name = "kafka_zk"
cluster = "local-cluster"

[httpserver.default]
address = "{{ $http_address }}"

[logging]
level = "{{ $log_level }}"

Note: The kafka-version is set to 3.6.1, but as mentioned earlier, Burrow works fine with Kafka 3.7.x after a restart, so this does not seem to be the root cause.

Request:

  • Has anyone encountered a similar issue, particularly after upgrading Kafka?
  • Are there any recommendations on how to troubleshoot this further?
  • Does anything in our configuration appear to be problematic?

Please let me know if additional information is required.
Thank you!

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the Burrow service's Kafka offset-fetching path and the provided error logs, especially the EOF and stale-metadata responses during the Kafka 3.6.x to 3.7.x rolling upgrade. Compare behavior before and after restarting the service; done means consumer lag metrics continue emitting through broker transitions without requiring a restart.

Written by the indexing model from the issue text.

Assessment

Tech stack
go, kafka
Domain
distributed-systems, observability
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.