Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

If this feature is supported by the cluster's MV, the first elected KRaft leader will write the ClusterIdRecord upon becoming the active controller alongside the other bootstrap metadata records.

One invariant of this feature is there is at most one ClusterIdRecord in the metadata log. When the MV does not support ClusterIdRecord, there is no ClusterIdRecord in the metadata log, and instead the cluster id is a local to each node's meta.properties . When the MV does support ClusterIdRecord, there must be exactly one ClusterIdRecord in the metadata log. When the active controller writes the bootstrap metadata records when the MV supports this feature, or when it updates its MV to support this feature, it must write the ClusterIdRecord. This invariant is enforceable when replaying the log and checking the image and deltas.

Code Block
{
  "apiKey": 29,
  "type": "metadata",
  "name": "ClusterIdRecord",
  "validVersions": "0",
  "flexibleVersions": "0+",
  "fields": [
    { "name": "ClusterId", "type": "string", "versions": "0+",
      "about": "The unique ID of this cluster" }
  ]
}

...