THIS IS A TEST INSTANCE. ALL YOUR CHANGES WILL BE LOST!!!!
...
There will be a new version of MetadataRequest. It will contain an additional field, TargetKRaftControllerQuorumDirectToKRaftControllerQuorum
.
This field defaults to false.
Code Block |
---|
diff --git a/clients/src/main/resources/common/message/MetadataRequest.json b/clients/src/main/resources/common/message/MetadataRequest.json index 5da95cfed6..8e5e765d11 100644 --- a/clients/src/main/resources/common/message/MetadataRequest.json +++ b/clients/src/main/resources/common/message/MetadataRequest.json @@ -18,7 +18,7 @@ "type": "request", "listeners": ["zkBroker", "broker"], "name": "MetadataRequest", - "validVersions": "0-12", + "validVersions": "0-13", "flexibleVersions": "9+", "fields": [ // In version 0, an empty array indicates "request metadata for all topics." In version 1 and @@ -50,6 +50,8 @@ { "name": "IncludeClusterAuthorizedOperations", "type": "bool", "versions": "8-10", "about": "Whether to include cluster authorized operations." }, { "name": "IncludeTopicAuthorizedOperations", "type": "bool", "versions": "8+", - "about": "Whether to include topic authorized operations." } + "about": "Whether to include topic authorized operations." }, + { "name": "DirectToKRaftControllerQuorum", "type": "bool", "versions": "13+", + "about": "Whether to target the KRaft controller quorum." } ] } diff --git a/clients/src/main/resources/common/message/MetadataResponse.json b/clients/src/main/resources/common/message/MetadataResponse.json index 928d905152..085c0d919f 100644 --- a/clients/src/main/resources/common/message/MetadataResponse.json +++ b/clients/src/main/resources/common/message/MetadataResponse.json @@ -42,7 +42,7 @@ // Version 11 deprecates ClusterAuthorizedOperations. This is now exposed // by the DescribeCluster API (KIP-700). // Version 12 supports topicId. - "validVersions": "0-12", + "validVersions": "0-13", "flexibleVersions": "9+", "fields": [ { "name": "ThrottleTimeMs", "type": "int32", "versions": "3+", "ignorable": true, @@ -94,6 +94,8 @@ "about": "32-bit bitfield to represent authorized operations for this topic." } ]}, { "name": "ClusterAuthorizedOperations", "type": "int32", "versions": "8-10", "default": "-2147483648", - "about": "32-bit bitfield to represent authorized operations for this cluster." } + "about": "32-bit bitfield to represent authorized operations for this cluster." }, + { "name": "FromKRaftController", "type": "bool", "versions": "13+", "default": "false", + "taggedVersions": "13+", "tag": 0, "about": "Whether the response was sent back from a KRaft controller." } ] } |
...
DirectToKRaftControllerQuorum Handling Matrix
DirectToKRaftControllerQuorum | If Received by Broker | If Received by KRaft Controller |
---|---|---|
false | traditional broker MetadataResponse | UNSUPPORTED_VERSION MetadataResponse |
true | NOT_CONTROLLER MetadataResponse | controller MetadataResponse described below |
...