Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

KAFKA-18405: Remove ZooKeeper logic from DynamicBrokerConfig #18508

Merged
merged 3 commits into from
Jan 16, 2025

Conversation

FrankYang0529
Copy link
Member

@FrankYang0529 FrankYang0529 commented Jan 13, 2025

  • Remove zkClientOpt in DynamicBrokerConfig.
  • Remove advertised.listeners from ReconfigurableConfigs and related logic.

Committer Checklist (excluded from commit message)

  • Verify design and implementation
  • Verify test coverage and CI build status
  • Verify documentation (including upgrade notes)

@github-actions github-actions bot added core Kafka Broker small Small PRs labels Jan 13, 2025
@chia7712
Copy link
Member

@FrankYang0529 Do you plan to handle #18384 (comment) in this PR? or this PR is used to remove zkClientOpt only? I'm ok to merge it for removing zkClientOpt only. Maybe @m1a2st could address it in #18390

@mimaison WDYT?

@FrankYang0529
Copy link
Member Author

FrankYang0529 commented Jan 14, 2025

Hi @chia7712, I will handle it in this PR because this Jira is created by that thread. Thanks.

@github-actions github-actions bot removed the small Small PRs label Jan 14, 2025
@FrankYang0529
Copy link
Member Author

Hi @chia7712, I have updated PR to handle "advertised.listeners" and failed cases in CI are flaky:

Copy link
Member

@chia7712 chia7712 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@FrankYang0529 thanks for this patch!

@@ -1032,15 +988,8 @@ class DynamicListenerConfig(server: KafkaBroker) extends BrokerReconfigurable wi
if (oldConfig.effectiveListenerSecurityProtocolMap(listenerName) != newConfig.effectiveListenerSecurityProtocolMap(listenerName))
throw new ConfigException(s"Security protocol cannot be updated for existing listener $listenerName")
}
if (!newAdvertisedListeners.contains(newConfig.interBrokerListenerName))
if (!oldAdvertisedListeners.contains(newConfig.interBrokerListenerName))
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is interBrokerListenerName a kind of dynamic config? If not, KafkaConfig has checked it in initialization.

def validateReconfiguration(newConfig: KafkaConfig): Unit = {
val oldConfig = server.config
val newListeners = listenersToMap(newConfig.listeners)
val newAdvertisedListeners = listenersToMap(newConfig.effectiveAdvertisedBrokerListeners)
val oldAdvertisedListeners = listenersToMap(oldConfig.effectiveAdvertisedBrokerListeners)
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

it seems we can use Set instead of Map, right?

@FrankYang0529
Copy link
Member Author

Hi @chia7712, I address all comments. Could you take a look when you have time? Thank you.

Copy link
Member

@chia7712 chia7712 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, but I have one follow-up comment.

@@ -900,7 +881,6 @@ object DynamicListenerConfig {
*/
val ReconfigurableConfigs = Set(
// Listener configs
SocketServerConfigs.ADVERTISED_LISTENERS_CONFIG,
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@FrankYang0529 Could you please file a minor follow-up to add this change to zk2kraft.html?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, I will create a minor PR for it. Thanks.

@chia7712 chia7712 merged commit 25f2ed0 into apache:trunk Jan 16, 2025
9 checks passed
chia7712 pushed a commit that referenced this pull request Jan 16, 2025
@FrankYang0529 FrankYang0529 deleted the KAFKA-18405 branch January 16, 2025 11:27
pranavt84 pushed a commit to pranavt84/kafka that referenced this pull request Jan 27, 2025
airlock-confluentinc bot pushed a commit to confluentinc/kafka that referenced this pull request Jan 27, 2025
manoj-mathivanan pushed a commit to manoj-mathivanan/kafka that referenced this pull request Feb 19, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
core Kafka Broker
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants