-
Notifications
You must be signed in to change notification settings - Fork 3.7k
[fix][broker] Fix stack overflow caused by race condition when closing a connection #24934
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 stack overflow caused by race condition when closing a connection #24934
Conversation
...r/src/main/java/org/apache/pulsar/broker/service/AbstractDispatcherSingleActiveConsumer.java
Outdated
Show resolved
Hide resolved
...r/src/main/java/org/apache/pulsar/broker/service/AbstractDispatcherSingleActiveConsumer.java
Show resolved
Hide resolved
...r/src/main/java/org/apache/pulsar/broker/service/AbstractDispatcherSingleActiveConsumer.java
Outdated
Show resolved
Hide resolved
...r/src/main/java/org/apache/pulsar/broker/service/AbstractDispatcherSingleActiveConsumer.java
Outdated
Show resolved
Hide resolved
lhotari
left a comment
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.
LGTM
|
/pulsarbot rerun-failure-checks |
|
/pulsarbot rerun-failure-checks |
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## master #24934 +/- ##
============================================
+ Coverage 74.28% 74.34% +0.06%
- Complexity 33886 33921 +35
============================================
Files 1913 1913
Lines 149425 149446 +21
Branches 17358 17362 +4
============================================
+ Hits 111001 111111 +110
+ Misses 29572 29501 -71
+ Partials 8852 8834 -18
Flags with carried forward coverage won't be shown. Click here to find out more.
🚀 New features to boost your workflow:
|
…g a connection (apache#24934) (cherry picked from commit 1dfe07e) (cherry picked from commit eeb51c4)
…g a connection (apache#24934) (cherry picked from commit 1dfe07e) (cherry picked from commit eeb51c4)
…g a connection (apache#24934) (cherry picked from commit 1dfe07e)
…g a connection (apache#24934) (cherry picked from commit 1dfe07e) (cherry picked from commit e98e844)
…g a connection (apache#24934) (cherry picked from commit 1dfe07e) (cherry picked from commit e98e844)
Motivation
See #24920 (comment)
Modifications
testOverrideInactiveConsumerto simulate the race condition by injecting a delay onchannelInactivevia the broker interceptor.addConsumerto wait forchannelInactiveis done. When the retry count reaches the limit, fail the methodDocumentation
docdoc-requireddoc-not-neededdoc-completeMatching PR in forked repository
PR in forked repository: