Skip to content

[improve][broker]Part-2 of PIP-433 add validation when enabling namespace-level Geo-Replication#25170

Open
poorbarcode wants to merge 2 commits intoapache:masterfrom
poorbarcode:pip_433_p2
Open

[improve][broker]Part-2 of PIP-433 add validation when enabling namespace-level Geo-Replication#25170
poorbarcode wants to merge 2 commits intoapache:masterfrom
poorbarcode:pip_433_p2

Conversation

@poorbarcode
Copy link
Contributor

@poorbarcode poorbarcode commented Jan 21, 2026

Motivation

This is part-2 of PIP-433.

Modifications

Checks compatibility between two clusters when enabling namespace-level replication, which includes the following

  • All topics’ partitions that have been created should be the same
  • Auto-creation policies between both clusters should be the same, including broker-level and namespace-level.

Documentation

  • doc
  • doc-required
  • doc-not-needed
  • doc-complete

@poorbarcode poorbarcode added this to the 4.2.0 milestone Jan 21, 2026
@poorbarcode poorbarcode self-assigned this Jan 21, 2026
@github-actions github-actions bot added the doc-not-needed Your PR changes do not impact docs label Jan 21, 2026
Copy link
Contributor

@Denovo1998 Denovo1998 left a comment

Choose a reason for hiding this comment

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

@poorbarcode
1.Partition consistency verification is "one-way" (only starting from the local topic).

  • The current logic will not detect the situation where "the remote already has a topic (and it may conflict with the local one in the future) but the local hasn't been created yet."
  • The test does not cover the case where "topic only exists remotely and conflicts with local policy".

2.Performance risk: Calling getPartitionedTopicMetadataAsync remotely once for each topic under the namespace

Should we consider concurrency limiting (semaphore), batching, or state in the document/comments that this is an admin operation and may take time?

@lhotari
Copy link
Member

lhotari commented Feb 6, 2026

Should we consider concurrency limiting (semaphore), batching, or state in the document/comments that this is an admin operation and may take time?

This is the biggest concern I have about this chance.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

doc-not-needed Your PR changes do not impact docs ready-to-test

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants