[improve] [ml] compress individual ack info to make maintain more records#21105
Open
poorbarcode wants to merge 2 commits intoapache:masterfrom
Open
[improve] [ml] compress individual ack info to make maintain more records#21105poorbarcode wants to merge 2 commits intoapache:masterfrom
poorbarcode wants to merge 2 commits intoapache:masterfrom
Conversation
14 tasks
|
The pr had no activity for 30 days, mark with Stale label. |
lhotari
requested changes
Dec 20, 2024
Member
lhotari
left a comment
There was a problem hiding this comment.
Please extract the logic to a separate class which is unit tested separately.
Comment on lines
+2974
to
+2975
| @VisibleForTesting | ||
| List<MLDataFormats.MessageRange> buildIndividualDeletedMessageRanges() { |
Member
There was a problem hiding this comment.
Instead of adding "VisibleForTesting" annotation here, please extract this logic to a separate class which is tested separately. There's a lot of complexity here and this would be very hard to maintain in the future in this form. Smaller classes and smaller methods are a general preference in maintainable code.
This file contains hidden or 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
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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
Broker serialize
individualDeletedMessagesas an array(1:1..1:5000],(2:-1..3:5000],,(100:-1..100:5000], each ledger will have a separate record, even if multiple ledgers are contiguous.We can compress the contiguous records to one, such as
(1:1...100:5000]. This can make one entry maintain more data, it also saves the IO of persisting cursor ack statsModifications
Compress the contiguous records to one to make one entry maintain more data.
Next to do: push another PR to compress the response of
pulsar-admin topics stats.In what cases would it be useful
(Highlight) Note: This patch will have a big impact and needs to be cherry-picked and reviewed carefully.
Documentation
docdoc-requireddoc-not-neededdoc-completeMatching PR in forked repository
PR in forked repository: x