AndrewJSchofield opened a new pull request, #23988:
URL: https://github.com/apache/kafka/pull/23988

   `o.a.k.clients.CommonClientConfigs` is not part of the public interface to 
Apache Kafka. It is neither in the javadoc nor is it marked 
`@InterfaceAudience.Public`. However, a handful of the config keys for 
producer, consumer, and streams were defined in this class, essentially meaning 
that an application using the string constants was stepping outside the Kafka 
public interface.
   
   For example, `CommonClientConfigs.METADATA_RECOVERY_STRATEGY_CONFIG` which 
is allowed as a producer config should really be 
`ProducerConfig.METADATA_RECOVERY_STRATEGY_CONFIG`. The latter is in a properly 
public class.
   
   This PR adds all of the missing string constants to `ProducerConfig`, 
`ConsumerConfig` and `StreamsConfig`.
   
   It is debatable whether this is tidying up the code by implementing the 
intent of KIPs, or whether it needs a KIP. For example, KIP-1242 added 
`metadata.cluster.check.enable` as a config for producer, consumer and admin. 
In explicably, the constant was added to `CommonClientConfigs` (not public) and 
`AdminClientConfigs`, but not `ProducerConfig` nor `ConsumerConfig`. This was a 
simple omission and was the intent of the KIP (which I wrote).


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to