-
-
Notifications
You must be signed in to change notification settings - Fork 1.5k
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
Use stree for message block fss
#5559
Merged
Merged
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
5ad4f81
to
1f57304
Compare
fss
fss
derekcollison
requested changes
Jun 21, 2024
1f57304
to
65c1955
Compare
Should provide some deduplication of long subjects in memory. Signed-off-by: Neil Twigg <[email protected]>
65c1955
to
001ea30
Compare
Signed-off-by: Derek Collison <[email protected]>
1a8c6c9
to
04bb282
Compare
wallyqs
approved these changes
Jun 21, 2024
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
derekcollison
approved these changes
Jun 21, 2024
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
wallyqs
pushed a commit
that referenced
this pull request
Jun 21, 2024
Should provide some deduplication of long subjects in memory when message blocks are loaded in. Signed-off-by: Neil Twigg <[email protected]> --------- Signed-off-by: Neil Twigg <[email protected]> Signed-off-by: Derek Collison <[email protected]> Co-authored-by: Derek Collison <[email protected]>
derekcollison
added a commit
that referenced
this pull request
Jul 7, 2024
This PR contains some bug-fixes for the filestore FSS state. First, if the filter provided is `_EMPTY_` then we need to overwrite it to `>` for the stree functions to work, but we failed to set `wc` when doing so. This could affect the decision on whether to linear-scan or not. We will now set `wc` too in this case. Second, if the FSS only contains a single subject then we may not correctly set `isAll` if the filter contained a wildcard, as `Find` does not work with wildcards and therefore wouldn't match the single subject. Updated to use `Match` instead, so that it correctly uses wildcards. Third, replaces `Match(>)` with `Iter` in `enforceMsgPerSubjectLimit`, not because it is behaviourally different, but because we need to walk the entire stree anyway and `Iter` saves CPU cycles by skipping the match step. Fourth, updates the bounds checking on various functions that use `Find` so that the logic matches the `Match` equivalents. This also matters in particular in `SubjectsState` which could fail altogether when the filter was a subject literal rather than a wildcard and the `psim` was out-of-date/needing update. Fifth, in `NumPending` and in `filteredPendingLocked` when matching the FSS state, if we find a partial, don't process any further matches after that. This bug was introduced in #5559 as there used to be a `break` there, whereas now the `Match` that replaces it can't be interrupted in the same way. Signed-off-by: Neil Twigg <[email protected]>
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.
Should provide some deduplication of long subjects in memory when message blocks are loaded in.
Signed-off-by: Neil Twigg [email protected]