apache / kafka

Mirror of Apache Kafka
Apache License 2.0
28.78k stars 13.95k forks source link

KAFKA-17543: Enforce that broker.id.generation.enable is not used when migrating to KRaft #17192

Closed cmccabe closed 1 month ago

cmccabe commented 1 month ago

@cmccabe thanks for this patch. This approach was my preference when fixing KAFKA-17077, but I tried to minimize the config changes in migration. Hence, out of curiosity, are there other issues/bugs in migration when broker.id.generation.enable=true?

control plane listeners are also not supported in KRaft mode.

cmccabe commented 1 month ago

I changed the PR slightly to simply forbid setting broker.id to -1, rather than forbidding broker.id.generation.enable = true. Although the latter approach is more conceptually pure, it would be more disruptive in practice. If someone has a cluster where all their broker IDs are defined, and is not using auto generation, they should not get an error even if they happen to have broker.id.generation.enable = true.

(One thing to note is a lot of our tests set broker.id.generation.enable = true, although almost none of them actually use it!)

chia7712 commented 1 month ago

control plane listeners are also not supported in KRaft mode.

Sorry that I can't catch the point. Could you please share more details to me?

cmccabe commented 1 month ago

control plane listeners are also not supported in KRaft mode.

Sorry that I can't catch the point. Could you please share more details to me?

The control.plane.listener.name configuration is not supported in KRaft mode