...
Code Block | ||
---|---|---|
| ||
{ "type": "data", "name": "ConsumerProtocolSubscription", // Subscription part of the Consumer Protocol. // // The current implementation assumes that future versions will not break compatibility. When // it encounters a newer version, it parses it using the current format. This basically means // that new versions cannot remove or reorder any of the existing fields. // // Version 1 adds owned partitions. // Version 2 adds generationId (KIP-792). // Version 3 adds rack id to enable rack-aware assignment. <== NEW "validVersions": "0-23", "flexibleVersions": "none", "fields": [ { "name": "Topics", "type": "[]string", "versions": "0+" }, { "name": "UserData", "type": "bytes", "versions": "0+", "nullableVersions": "0+", "default": "null", "zeroCopy": true }, { "name": "OwnedPartitions", "type": "[]TopicPartition", "versions": "1+", "ignorable": true, "fields": [ { "name": "Topic", "type": "string", "mapKey": true, "versions": "1+", "entityType": "topicName" }, { "name": "Partitions", "type": "[]int32", "versions": "1+"} ] }, { "name": "GenerationId", "type": "int32", "versions": "2+", "default": "-1"}, { "name": "RackId", "type": "string", "versions": "2+", "nullableVersions": "2+", "default": "null", "ignorable": true } <== NEW ] } |
...