[improve][txn] change delete pending ack position from foreach to firstKey #16927
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
now transaction pending ack delete pending ack state position use cursor mark delete position.
now the logic is use foreach, every position in pending ack state need to check the position whether smaller than mark delete position. If the position is smaller than mark delete position, it can be deleted from the pending ack state map.
this map is a skipListMap, the key is the position, so we only need to check if the first entry is better, if it is smaller than mark delete we can continue check, otherwise, we only break the check directly.
Modifications
chan foreach to use firstkey
Verifying this change
add the test for it
Does this pull request potentially affect one of the following parts:
If
yes
was chosen, please highlight the changesDocumentation
Does this pull request introduce a new feature? (yes)
If yes, how is the feature documented? (not applicable / docs / JavaDocs / not documented)
If a feature is not applicable for documentation, explain why?
If a feature is not documented yet in this PR, please create a followup issue for adding the documentation
doc-not-needed