Andrew Schofield created KAFKA-20939:
----------------------------------------
Summary: Client applications broken by DNS resolution failure
behaviour change
Key: KAFKA-20939
URL: https://issues.apache.org/jira/browse/KAFKA-20939
Project: Kafka
Issue Type: Bug
Components: clients
Affects Versions: 4.4.0
Reporter: Andrew Schofield
Assignee: TengYao Chi
KIP-909 introduces a behavioural change in the Kafka client in Apache Kafka
4.4.0 without an explicit opt-in.
Prior to KIP-909, a DNS resolution failure would result in ConfigException
being thrown from the constructor of a Kafka client object such as
KafkaProducer - this means a failure would not create an instance of
KafkaProducer at all, which is fundamentally different to a broken unusable
instance of KafkaProducer.
After KIP-909, a DNS resolution failure results in the non-retriable
BootstrapResolutionException being thrown from another method such as
KafkaProducer.send(). The result is a broken instance of KafkaProducer which
needs to be discarded and created afresh.
There is the possibility that applications are broken by this change in
behaviour without explicitly opting in to what is fundamentally a better design
than what went before.
It seems possible to default to the prior behaviour, and make the new behaviour
opt-in. This would eliminate the risk of breaking existing applications while
retaining the improved behaviour for those who choose to use it.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)