-
Notifications
You must be signed in to change notification settings - Fork 3.6k
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
[fix] [broker] Fix can not subscribe partitioned topic with a suffix-matched regexp #22025
Merged
poorbarcode
merged 3 commits into
apache:master
from
poorbarcode:fix/break_change_of_pip_145_3
Feb 19, 2024
Merged
[fix] [broker] Fix can not subscribe partitioned topic with a suffix-matched regexp #22025
poorbarcode
merged 3 commits into
apache:master
from
poorbarcode:fix/break_change_of_pip_145_3
Feb 19, 2024
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
poorbarcode
added
type/bug
The PR fixed a bug or issue reported a bug
category/reliability
The function does not work properly in certain specific environments or failures. e.g. data lost
release/3.0.3
release/2.11.4
release/3.1.3
release/3.2.1
labels
Feb 5, 2024
poorbarcode
requested review from
lhotari,
Technoboy-,
codelipenghui,
gaoran10 and
liangyepianzhou
February 5, 2024 09:31
Technoboy-
reviewed
Feb 5, 2024
pulsar-broker/src/test/java/org/apache/pulsar/client/impl/PatternTopicsConsumerImplTest.java
Outdated
Show resolved
Hide resolved
gaoran10
reviewed
Feb 5, 2024
pulsar-broker/src/main/java/org/apache/pulsar/broker/service/TopicListService.java
Show resolved
Hide resolved
dao-jun
approved these changes
Feb 9, 2024
Technoboy-
approved these changes
Feb 18, 2024
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## master #22025 +/- ##
============================================
+ Coverage 72.90% 73.58% +0.68%
- Complexity 32464 32562 +98
============================================
Files 1850 1874 +24
Lines 138611 139221 +610
Branches 15201 15260 +59
============================================
+ Hits 101052 102448 +1396
+ Misses 29711 28849 -862
- Partials 7848 7924 +76
Flags with carried forward coverage won't be shown. Click here to find out more.
|
Technoboy-
pushed a commit
that referenced
this pull request
Feb 22, 2024
Technoboy-
pushed a commit
that referenced
this pull request
Feb 27, 2024
mukesh-ctds
pushed a commit
to datastax/pulsar
that referenced
this pull request
Mar 1, 2024
…matched regexp (apache#22025) (cherry picked from commit ad09f78)
mukesh-ctds
pushed a commit
to datastax/pulsar
that referenced
this pull request
Mar 6, 2024
…matched regexp (apache#22025) (cherry picked from commit ad09f78)
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Labels
category/reliability
The function does not work properly in certain specific environments or failures. e.g. data lost
cherry-picked/branch-2.11
cherry-picked/branch-3.0
cherry-picked/branch-3.1
cherry-picked/branch-3.2
doc-not-needed
Your PR changes do not impact docs
ready-to-test
release/2.11.4
release/3.0.3
release/3.1.3
release/3.2.1
type/bug
The PR fixed a bug or issue reported a bug
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Motivation
If a consumer tries to subscribe to a partitioned topic with a suffix-matched regexp, it does not work.
persistent://public/default/tp
persistent://public/default/tp$
You can reproduce the issue by the test
testPreciseRegexpSubscribe
.2.10.x
>=2.11.0
, it is a break change due to PIP-145#21885 fixed one wrong logic here, but there is still another wrong logic, see https://github.com/apache/pulsar/blob/master/pulsar-broker/src/main/java/org/apache/pulsar/broker/service/TopicListService.java#L64
Why can the test
testPreciseRegexpSubscribe
pass?#21885 added a test
testPreciseRegexpSubscribe
that covers the test which creates a consumer with a suffix-matched regexp. It works as below:recheckTopicsChangeAfterReconnect
after the topic watcher is connected. [fix] [broker] Fix break change: could not subscribe partitioned topic with a suffix-matched regexp due to a mistake of PIP-145 #21885 fixed the wrong behavior.The test
testPreciseRegexpSubscribe
can not pass as the below flow:recheckTopicsChangeAfterReconnect
at this step.Modifications
topic name
.Documentation
doc
doc-required
doc-not-needed
doc-complete
Matching PR in forked repository
PR in forked repository: x