kafka/metadata
Colin P. McCabe 0069fcea13 KAFKA-15369: Implement KIP-919: Allow AC to Talk Directly with Controllers
Implement KIP-919: Allow AdminClient to Talk Directly with the KRaft Controller Quorum and add
Controller Registration.

This KIP adds a new version of DescribeClusterRequest which is supported by KRaft controllers.
It also teaches AdminClient how to use this new DESCRIBE_CLUSTER request to talk directly with the
controller quorum.

In order to share the DESCRIBE_CLUSTER logic between broker and controller, this PR factors it out
into AuthHelper.computeDescribeClusterResponse.

On the controller side, the controllers now try to register themselves with the current active
controller, by sending a CONTROLLER_REGISTRATION request. This, in turn, is converted into a
RegisterControllerRecord by the active controller. ClusterImage, ClusterDelta, and all other
associated classes have been upgraded to propagate the new metadata.

This KIP adds three new errors codes: MISMATCHED_ENDPOINT_TYPE, UNSUPPORTED_ENDPOINT_TYPE, and
UNKNOWN_CONTROLLER_ID. The endpoint type errors can be returned from DescribeClusterRequest
2023-08-24 11:27:52 -07:00
..
src KAFKA-15369: Implement KIP-919: Allow AC to Talk Directly with Controllers 2023-08-24 11:27:52 -07:00
.gitignore KAFKA-13429: ignore bin on new modules (#11415) 2021-11-10 14:36:24 -06:00