-
Notifications
You must be signed in to change notification settings - Fork 3.2k
Description
Read the FAQ first: https://github.com/confluentinc/librdkafka/wiki/FAQ
Do NOT create issues for questions, use the discussion forum: https://github.com/confluentinc/librdkafka/discussions
Description
Hello!
I am reporting a segmentation fault.
I will explain briefly because the symptoms and code are clear.
In the rd_kafka_topic_metadata_update() function of rdkafka_topic.c, a NULL reference exception occurs on a variable rktp.
In v2.6.0, the rktp variable is referenced at line 1390.
After analyzing the code for a short time, I found that a null check was missing.
In simple terms,
if (unlikely(!rktp)) {
rd_kafka_dbg(~~~);
return;
}
This code was missing.
I found this problem when I tried to test the problem when the broker was restarted repeatedly.
It is not always the case, but about once in dozens of times, the rktp pointer becomes NULL.
However, since I cannot write an issue at work, I am writing it simply at home without a call stack and screenshots.
Since my company uses librdkafka on at least a thousand servers, I need to fix the issue before I can upgrade the version.
I hope for a quick fix. Thanks.
How to reproduce
With librdkafka producer running,
repeat start-stop of brokers.
An issue occurred in 2.6.0.
Checklist
Please provide the following information:
- librdkafka version (release number or git tag): v2.6.0
- Apache Kafka version: 3.6.0
- librdkafka client configuration:
<REPLACE with e.g., message.timeout.ms=123, auto.reset.offset=earliest, ..>
- Operating system: win10 , ubuntu 22.04
- Provide logs (with
debug=..
as necessary) from librdkafka - Provide broker log excerpts
- Critical issue