Fredrik Lysén created KAFKA-19188: ------------------------------------- Summary: kafka-topics.sh --describe output for message.format.version is inconsistent immediately after cluster restart when not set at topic level Key: KAFKA-19188 URL: https://issues.apache.org/jira/browse/KAFKA-19188 Project: Kafka Issue Type: Bug Components: admin Affects Versions: 3.9.0 Environment: Amazon Linux 2 (EC2 instances) Reporter: Fredrik Lysén
When running {{kafka-topics.sh --describe}} to inspect topic configuration immediately after restarting a Kafka broker, the {{}} {code:java} message.format.version{code} {{}} property is inconsistently present in the output. *Steps to reproduce:* # Set up a 3-broker Kafka cluster. # On brokers 1 and 2, set {{log.message.format.version=3.2}} in {{{}server.properties{}}}. # On broker 3 (the one you will use as {{{}--bootstrap-server{}}}), do *not* set {{{}log.message.format.version{}}}. # Create a topic without setting {{message.format.version}} at the topic level. # Restart the cluster. # Immediately after restart, run: {code:java} kafka-topics.sh --bootstrap-server <broker-3>:9092 --describe --command-config <config> {code} * Observe the output for the topic configuration. *Expected behavior:* The {{message.format.version}} property should be reported consistently (either always present or always absent) in the topic config output, reflecting the inherited value from the broker configuration when not set at the topic level. *Actual behavior:* Immediately after restart, the output for the topic sometimes omits {{message.format.version}} in the config list, or shows it inconsistently between runs, even though the brokers' configs are stable and the cluster is healthy after a short delay. *Additional notes:* * After waiting for the cluster to stabilize, the config output becomes consistent. * This inconsistency may cause confusion for operational monitoring or automation tools that depend on the output of {{{}kafka-topics.sh --describe{}}}. *Example output:* {code:java} # Immediately after restart: Topic: example.topic Configs: min.insync.replicas=2,segment.bytes=536870912,unclean.leader.election.enable=false # After cluster stabilizes: Topic: example.topic Configs: min.insync.replicas=2,segment.bytes=536870912,message.format.version=3.2,unclean.leader.election.enable=false {code} -- This message was sent by Atlassian Jira (v8.20.10#820010)