-
Notifications
You must be signed in to change notification settings - Fork 455
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
[Aggregator] Support setting consumer service filters dynamically via topic updates #4297
base: master
Are you sure you want to change the base?
Conversation
|
} | ||
} else { | ||
// sending no dynamic filters means we should remove all filters, unless there are static filters | ||
// if there are no static filters, remove all filters |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
actually probably makes sense to instead unregister filters, then apply static filters if there are any.
What this PR does / why we need it:
Adds support for setting consumer services filters at runtime via topic updates.
Previously the only way to add / remove / edit consumer servicesfilters is via the aggregator's static configuration, meaning a deployment is needed.
This change introduces the following new features,
I am not removing the ability to statically configure consumer service filters, as that would be a breaking change. In this new world, dynamic filter configuration overrides static filter configuration. If dynamic filter configuration is non-nil, whatever static filters exist on the CSW are overriden.
Code Changes:
Notes for reviewer
writer_test.go is a good place to start as it has tests for the topic update flow.
Does this PR introduce a user-facing and/or backwards incompatible change?:
Does this PR require updating code package or user-facing documentation?: