Является ли исключение IllegalStateException: не найдено записи для подключения восстанавливаемым исключением для KafkaConsumer.poll?

#apache-kafka #kafka-consumer-api

#apache-kafka #kafka-consumer-api

Вопрос:

У меня есть KafkaConsumer, в котором регистрируется следующая ошибка

 Heartbeat thread failed due to unexpected error java.lang.IllegalStateException: No entry found for connection 1
  

за которым следует KafkaConsumer.poll() выдача IllegalStateException .

В этом случае могу ли я продолжить вызов KafkaConsumer.poll() с ожиданием, что он снова подключится и продолжит функционировать?

Или это неустранимая ошибка, которая означает, что я больше не могу использовать этого пользователя?

Комментарии:

1. Какая у вас версия Kafka? Это одноразовый случай или вы постоянно сталкиваетесь с этой проблемой? Если вы можете воспроизвести, можете ли вы прикрепить журналы трассировки?

2. Если произошло с брокером 2.2.0 и клиентами 2.1.1. Это произошло с несколькими потребителями, работающими в k8s pods, когда сетевой интерфейс был отключен на узле для проверки HA. Возможно, я смогу получить некоторые журналы трассировки при следующем тестировании.

Ответ №1:

Основной причиной этой проблемы был KAFKA-7974, так что это не исключение, от которого можно было бы ожидать восстановления, поскольку внутренние компоненты потребителя должны обработать этот случай.

Оно будет разрешено в Kafka 2.1.2, 2.2.1 и 2.3.0.