Closed
Description
Description
Calling query_watermark_offsets() on a newly created consumer that has retrieved cluster metadata but no topic metadata will fail for the first call:
Reported in confluentinc/confluent-kafka-python#196
How to reproduce
%7|1502285441.278|METADATA|rdkafka#consumer-4| [thrd:main]: localhost:62954/4: ===== Received metadata: connected =====
%7|1502285441.278|METADATA|rdkafka#consumer-4| [thrd:main]: localhost:62954/4: ClusterId: rxqnDq58T5K4ljcg8WfMfw, ControllerId: 2
%7|1502285441.278|METADATA|rdkafka#consumer-4| [thrd:main]: localhost:62954/4: 3 brokers, 0 topics
%7|1502285441.278|METADATA|rdkafka#consumer-4| [thrd:main]: localhost:62954/4: Broker #0/3: localhost:62952 NodeId 2
%7|1502285441.278|METADATA|rdkafka#consumer-4| [thrd:main]: localhost:62954/4: Broker #1/3: localhost:62954 NodeId 4
%7|1502285441.278|METADATA|rdkafka#consumer-4| [thrd:main]: localhost:62954/4: Broker #2/3: localhost:62953 NodeId 3
c = C.get_watermark_offsets(TopicPartition('test',1))
%7|1502285443.486|METADATA|rdkafka#consumer-4| [thrd:app]: Requesting metadata for 1/1 topics: query partition leaders
%7|1502285443.486|METADATA|rdkafka#consumer-4| [thrd:app]: localhost:62953/3: Request metadata for 1 topic(s): query partition leaders
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
cimpl.KafkaException: KafkaError{code=LEADER_NOT_AVAILABLE,val=5,str="Failed to get watermark offsets: Broker: Leader not available"}
>>> %7|1502285443.487|METADATA|rdkafka#consumer-4| [thrd:main]: localhost:62953/3: ===== Received metadata (for 1 requested topics): query partition leaders =====
%7|1502285443.487|METADATA|rdkafka#consumer-4| [thrd:main]: localhost:62953/3: ClusterId: rxqnDq58T5K4ljcg8WfMfw, ControllerId: 2
%7|1502285443.487|METADATA|rdkafka#consumer-4| [thrd:main]: localhost:62953/3: 3 brokers, 1 topics
%7|1502285443.487|METADATA|rdkafka#consumer-4| [thrd:main]: localhost:62953/3: Broker #0/3: localhost:62952 NodeId 2
%7|1502285443.487|METADATA|rdkafka#consumer-4| [thrd:main]: localhost:62953/3: Broker #1/3: localhost:62954 NodeId 4
%7|1502285443.487|METADATA|rdkafka#consumer-4| [thrd:main]: localhost:62953/3: Broker #2/3: localhost:62953 NodeId 3
%7|1502285443.487|METADATA|rdkafka#consumer-4| [thrd:main]: localhost:62953/3: Topic #0/1: test with 4 partitions
%7|1502285443.487|METADATA|rdkafka#consumer-4| [thrd:main]: localhost:62953/3: 1/1 requested topic(s) seen in metadata
>>>
>>>
>>> c.get_watermark_offsets(TopicPartition('test',1))
%7|1502285454.620|OFFSET|rdkafka#consumer-4| [thrd:app]: localhost:62952/2: OffsetRequest (v0, opv 0) for 1 topic(s) and 1 partition(s)
%7|1502285454.620|OFFSET|rdkafka#consumer-4| [thrd:app]: localhost:62952/2: OffsetRequest (v0, opv 0) for 1 topic(s) and 1 partition(s)
(0L, 4L)
Checklist
Please provide the following information:
- librdkafka version (release number or git tag): 0.11.0
- Apache Kafka version: 0.10.2.1
- librdkafka client configuration:
- Operating system:
- Using the legacy Consumer
- Using the high-level KafkaConsumer
- Provide logs (with
debug=..
as necessary) from librdkafka - Provide broker log excerpts
- Critical issue