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

[PIP-105] Part-2 Support pluggable entry filter in Dispatcher #12970

Merged
merged 21 commits into from
Nov 30, 2021

Conversation

315157973
Copy link
Contributor

Motivation

see #12269

Modifications

Add pluggable entry filter

Documentation

  • [ x ] doc-required

@315157973 315157973 self-assigned this Nov 25, 2021
@github-actions github-actions bot added the doc-required Your PR changes impact docs and you will update later. label Nov 25, 2021
conf/broker.conf Outdated
# Class name of Pluggable entry filter that can decide whether the entry needs to be filtered
# You can use this class to decide which entries can be sent to consumers.
# Multiple classes need to be separated by commas.
entryFilterClassNames=
Copy link
Contributor

Choose a reason for hiding this comment

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

Do we need a directory to maintain all the filters? otherwise, we need to copy the filter jar to the lib dir.

Copy link
Contributor

Choose a reason for hiding this comment

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

Another point is we should load the class by a separate classloader that extends from the pulsar classloader?

Copy link
Member

@Anonymitaet Anonymitaet left a comment

Choose a reason for hiding this comment

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

@315157973 I see you've added annotations in API files, except that, will you need descriptions (what the feature is and how to use this feature) to docs? Somewhere like here?

315157973 and others added 7 commits November 25, 2021 17:20
…ntryFilter.java

Co-authored-by: Anonymitaet <50226895+Anonymitaet@users.noreply.github.com>
…ntryFilter.java

Co-authored-by: Anonymitaet <50226895+Anonymitaet@users.noreply.github.com>
…ntryFilter.java

Co-authored-by: Anonymitaet <50226895+Anonymitaet@users.noreply.github.com>
…ntryFilter.java

Co-authored-by: Anonymitaet <50226895+Anonymitaet@users.noreply.github.com>
Copy link
Contributor

@eolivelli eolivelli left a comment

Choose a reason for hiding this comment

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

Great work.
Please take a look to my comments

private SubscriptionOption subscriptionOption;
private MessageMetadata msgMetadata;

public void reset() {
Copy link
Contributor

Choose a reason for hiding this comment

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

This method is only for the implementation, do not keep it here

Copy link
Contributor Author

Choose a reason for hiding this comment

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

I think Context does not need to be made into an interface, just make it into a class directly

@315157973
Copy link
Contributor Author

Hello, I have processed as required, please take a look again @eolivelli

@315157973
Copy link
Contributor Author

@codelipenghui @eolivelli PTAL

@codelipenghui codelipenghui added this to the 2.10.0 milestone Nov 26, 2021
Copy link
Contributor

@eolivelli eolivelli left a comment

Choose a reason for hiding this comment

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

I did my last pass.
I am sorry I missed some comments on my first pass.

@315157973
Copy link
Contributor Author

@eolivelli All done, thanks

@315157973
Copy link
Contributor Author

@eolivelli PTAL

@wolfstudy
Copy link
Member

ping @eolivelli PTAL thanks

Copy link
Contributor

@eolivelli eolivelli left a comment

Choose a reason for hiding this comment

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

LGTM great work !

@eolivelli eolivelli merged commit dac47cb into apache:master Nov 30, 2021
zeo1995 pushed a commit to zeo1995/pulsar that referenced this pull request Dec 1, 2021
* up/master: (75 commits)
  [website][upgrade]feat: website upgrade / docs migration - 2.5.1 Get Started/Concepts and Architecture/Pulsar Schema (apache#13030)
  Fix environment variable assignment in startup scripts (apache#13025)
  update 2.8.x (apache#13029)
  [Doc] add tips for Pulsar tools (apache#13044)
  Suggest to use tlsPort instead of deprecated TlsEnable (apache#13039)
  Integration tests for function-worker rebalance and drain operations. (apache#13058)
  fix(functions): missing runtime set in GoInstanceConfig (apache#13031)
  [pulsar-admin] Add get-replicated-subscription-status command for topic (apache#12891)
  [Broker] Consider topics in pulsar/system namespace as system topics (apache#13050)
  Fix typo: correct sizeUint to sizeUnit (apache#13040)
  fix-12894 (apache#12896)
  Don't attempt to delete pending ack store unless transactions are enabled (apache#13041)
  [Perf] Evaluate the current protocol version once (apache#13045)
  Fix Issue apache#12885, Unordered consuming case in Key_Shared subscription (apache#12890)
  [broker]Optimize topicMaxMessageSize with topic local cache. (apache#12830)
  [PIP-105] Part-2 Support pluggable entry filter in Dispatcher (apache#12970)
  [website] Modify admin-api-topic.md document (apache#12996)
  add missed import (apache#13037)
  [metadata] Add RocksdbMetadataStore (apache#12776)
  [C] Add pulsar_client_subscribe_multi_topics and pulsar_client_subscribe_pattern (apache#12965)
  ...

# Conflicts:
#	site2/website-next/docusaurus.config.js
#	site2/website-next/versioned_sidebars/version-2.6.1-sidebars.json
#	site2/website-next/versions.json
fxbing pushed a commit to fxbing/pulsar that referenced this pull request Dec 19, 2021
@Anonymitaet Anonymitaet added doc-complete Your PR changes impact docs and the related docs have been already added. and removed doc-required Your PR changes impact docs and you will update later. labels Jan 6, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
doc-complete Your PR changes impact docs and the related docs have been already added.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants