-
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 NPE when calculating a topic's backlogQuota #23720
[fix] [broker] fix NPE when calculating a topic's backlogQuota #23720
Conversation
/pulsarbot rerun-failure-checks |
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## master #23720 +/- ##
============================================
+ Coverage 73.57% 74.43% +0.85%
- Complexity 32624 35110 +2486
============================================
Files 1877 1945 +68
Lines 139502 147482 +7980
Branches 15299 16278 +979
============================================
+ Hits 102638 109775 +7137
- Misses 28908 29244 +336
- Partials 7956 8463 +507
Flags with carried forward coverage won't be shown. Click here to find out more.
|
Hi there, when will this fix be included in the next release? |
(cherry picked from commit 8e80f88)
@poorbarcode Would you mind cherry-picking this to branch-3.0 and branch-3.3? Thanks |
(cherry picked from commit 8e80f88)
(cherry picked from commit 8e80f88)
Done |
Motivation
Background
The steps for checking backlog metadata are as follows
cursor.md
equals LACIssue
PersistentTopic.estimatedTimeBasedBacklogQuotaCheck
may get an NPE when the@param position(cursor.markDeletedPositon)
equals LAC and the latest ledger has been removed by aML.trimLedgers
, which was introduced by [feat][broker] Implementation of PIP-323: Complete Backlog Quota Telemetry #21816cursor.md
equals LAC at step 2 above, why does it still callPersistentTopic.estimatedTimeBasedBacklogQuotaCheck
with a param that equalsLAC
?acknowledgments
andML.trimLedgers
that happened betweenstep2 above and step 3
aboveModifications
Documentation
doc
doc-required
doc-not-needed
doc-complete
Matching PR in forked repository
PR in forked repository: x