Kirk True created KAFKA-17040:
---------------------------------
Summary: Unknown telemetry state: TERMINATED thrown when closing
AsyncKafkaConsumer
Key: KAFKA-17040
URL: https://issues.apache.org/jira/browse/KAFKA-17040
Project: Kafka
Issue Type: Bug
Components: clients, metrics
Affects Versions: 3.9.0
Reporter: Kirk True
An error is occasionally thrown when closing the {{{}AsyncKafkaConsumer{}}}:
{noformat}
[ERROR] 2024-06-20 17:13:54,121 [consumer_background_thread]
org.apache.kafka.clients.consumer.internals.ConsumerNetworkThread
lambda$configureThread$0 - Uncaught exception in thread
'consumer_background_thread':
java.lang.IllegalStateException: Unknown telemetry state: TERMINATED
at
org.apache.kafka.common.telemetry.internals.ClientTelemetryReporter$DefaultClientTelemetrySender.timeToNextUpdate(ClientTelemetryReporter.java:363)
at
org.apache.kafka.clients.NetworkClient$TelemetrySender.maybeUpdate(NetworkClient.java:1392)
at org.apache.kafka.clients.NetworkClient.poll(NetworkClient.java:668)
at
org.apache.kafka.clients.consumer.internals.NetworkClientDelegate.poll(NetworkClientDelegate.java:143)
at
org.apache.kafka.clients.consumer.internals.ConsumerNetworkThread.sendUnsentRequests(ConsumerNetworkThread.java:299)
at
org.apache.kafka.clients.consumer.internals.ConsumerNetworkThread.cleanup(ConsumerNetworkThread.java:318)
at
org.apache.kafka.clients.consumer.internals.ConsumerNetworkThread.run(ConsumerNetworkThread.java:105){noformat}
The issue appears to be that the {{TERMINATED}} state is not expected in the
switch statement inside
[timeToNextUpdate()|https://github.com/apache/kafka/blob/trunk/clients/src/main/java/org/apache/kafka/common/telemetry/internals/ClientTelemetryReporter.java#L307].
As an aside, the error message might make more sense to be written as
"{_}Unexpected{_} telemetry state" instead of "{_}Unknown{_} telemetry state"
since {{TERMINATED}} is a known state, but heretofore unexpected.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)