-
Notifications
You must be signed in to change notification settings - Fork 25.2k
Reduce Overhead of RepositoryData Cache for Large Repositories #66587
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
Reduce Overhead of RepositoryData Cache for Large Repositories #66587
Conversation
This adds caching the fact that `RepositoryData` was too large to be cached so we don't serialize it over and over just to find out we can't cache it.
Pinging @elastic/es-distributed (Team:Distributed) |
/** | ||
* Cached serialized repository data or placeholder to keep track of the fact that data for a generation was too large to be cached. | ||
*/ | ||
private static final class CachedRepositoryData { |
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.
I figured I'd encapsulate this a little (even though it adds a bunch of lines) because the Tuple
access is quite hard to read and it's used in a bunch of spots.
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
Thanks Tanguy! |
…ic#66587) This adds caching the fact that `RepositoryData` was too large to be cached so we don't serialize it over and over just to find out we can't cache it.
… (#66609) This adds caching the fact that `RepositoryData` was too large to be cached so we don't serialize it over and over just to find out we can't cache it.
This adds caching the fact that
RepositoryData
was too large to becached so we don't serialize it over and over just to find out we can't
cache it (which obviously is quite costly for larger
RepositoryData
instances).relates #66042