...
The idea is to move the configuration and ability to automatically create topics client-side on the producer. Broker auto-topic creation will be deprecated. This includes deprecating the configuration 'auto.create.topics.enable' on the broker and 'allow.auto.create.topics' on the consumer. In the producer, auto-creation of a topic will occur through a specific request rather than through a side effect of requesting metadata. Unlike the configuration in the consumer, the ability to automatically create topics client-side will be independent of the server-side automatic topic creation controlled by the broker configuration.
If the broker config, 'auto.create.topics.enable' is set to true, a warning will be given that states the config is deprecated.
If server-side auto-creation is enabled with the broker's auto.create.topics.enable, the broker's defaults for partitions and replication factor will be used. When server-side auto-creation is disabled, client-side auto-creation will try to use client-side configurations if set. However, if none exist, as represented by -1, broker-side defaults can be used if the broker supports KIP 464. Client-side auto-creation is not supported for older brokers (greater than 0.10.1.1) if no client configurations are given, and even older brokers (versions before 0.10.1.1) do not support client-side auto-creation at all.
...