-
Notifications
You must be signed in to change notification settings - Fork 292
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
multi: Use new container/lru module. #3360
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
davecgh
force-pushed
the
multi_use_container_lru
branch
2 times, most recently
from
June 10, 2024 03:52
5184989
to
e0450ca
Compare
davecgh
force-pushed
the
multi_use_container_lru
branch
2 times, most recently
from
June 10, 2024 16:04
6f35e11
to
28a2817
Compare
davecgh
force-pushed
the
multi_use_container_lru
branch
2 times, most recently
from
June 11, 2024 23:24
f975d1f
to
19f444d
Compare
davecgh
force-pushed
the
multi_use_container_lru
branch
2 times, most recently
from
June 12, 2024 17:08
2211fb9
to
607a7cd
Compare
jrick
approved these changes
Jun 12, 2024
davecgh
force-pushed
the
multi_use_container_lru
branch
4 times, most recently
from
June 12, 2024 23:05
51741bf
to
c95a209
Compare
This updates the peer known inventory and sent nonces LRU caches to use the new container/lru module. It also uses the expiration functionality of the new module to impose an expiration time of 15 minutes on the known inventory entries. This will allow the possibility of the cache shrinking over time in periods of low activity versus the current behavior where it will eventually reach the limit and stay there indefinitely.
This updates the blockchain recent blocks and contextual checks LRU caches to use the new container/lru module.
This updates the mining notified parents LRU cache to use the new container/lru module.
This adds the new container/lru module to the multimod go workspace setup script and simultaneously removes the old lru module. It also adds a directive to drop the use of the old lru module from existing go.work files.
davecgh
force-pushed
the
multi_use_container_lru
branch
from
June 13, 2024 20:47
c95a209
to
6ac5ab5
Compare
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.
This requires #3359.This consists of a series of commits to update the code to make use of the new
container/lru
module as well as deprecate and remove the existing interface-basedlru
module.In addition to being a bit more efficient, it also has the benefit of using the expiration functionality the new module provides to impose an expiration time of 15 minutes on the known inventory entries for peers. This allows the possibility of the cache shrinking over time in periods of low activity versus the current behavior where it will eventually reach the limit and stay there indefinitely.
Each commit is intended to be a self-contained and logically easy to follow change such that the code continues to compile and the tests continue to pass at each step.
See the description of each commit for further details.