Skip to content

[broker] Optimize TopicPolicy#deduplicationEnabled with HierarchyTopicPolicies - #13000

Merged
codelipenghui merged 1 commit into
apache:masterfrom
Jason918:opt-tp-deduplicationEnabled
Dec 2, 2021
Merged

[broker] Optimize TopicPolicy#deduplicationEnabled with HierarchyTopicPolicies#13000
codelipenghui merged 1 commit into
apache:masterfrom
Jason918:opt-tp-deduplicationEnabled

Conversation

@Jason918

@Jason918 Jason918 commented Nov 27, 2021

Copy link
Copy Markdown
Contributor

Motivation

This is one of the serial topic policy optimization with HierarchyTopicPolicies.

Update topic policy with HierarchyTopicPolicies comes with these benefits:

  • All topic policy related settings will goes into AbstractTopic#topicPolicies, easier to understand, check, review, and modify.
  • Unify policy update to AbstractTopic. And easier to find which policy is not applied to non-persistent topic yet. And we can easily add support for it.
  • Unify policy value with 3 level settings (topic/namespace/broker), and priority with topic > namespace > broker. And it's easier to find which level settings is missing.
  • All values are updated at creation or by trigger. We can save some resource to update it or recalculate each time we use it.
  • etc.

Modifications

Add new field deduplicationEnabled in org.apache.pulsar.broker.service.AbstractTopic#topicPolicies.

Verifying this change

  • Make sure that the change passes the CI checks.

This change is already covered by existing tests, such as org.apache.pulsar.broker.service.persistent.TopicDuplicationTest

Some checklist for updating topic policy with HierarchyTopicPolicies.

Does this pull request potentially affect one of the following parts:

If yes was chosen, please highlight the changes

  • Dependencies (does it add or upgrade a dependency): (no)
  • The public API: (no)
  • The schema: (no)
  • The default values of configurations: (no)
  • The wire protocol: (no)
  • The rest endpoints: (no)
  • The admin cli options: (no)
  • Anything that affects deployment: (no)

Documentation

Check the box below and label this PR (if you have committer privilege).

Need to update docs?

  • no-need-doc

Code optimization.

@github-actions github-actions Bot added the doc-not-needed Your PR changes do not impact docs label Nov 27, 2021
@Jason918

Copy link
Copy Markdown
Contributor Author

/pulsarbot run-failure-checks

@codelipenghui codelipenghui added this to the 2.10.0 milestone Nov 29, 2021
@Jason918
Jason918 force-pushed the opt-tp-deduplicationEnabled branch from ff47898 to 29d0c96 Compare December 1, 2021 03:35
@Jason918

Jason918 commented Dec 1, 2021

Copy link
Copy Markdown
Contributor Author

/pulsarbot run-failure-checks

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

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants