Skip to content
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

PDP-34 Simplified-LTS : Implement more efficient eviction cache for ReadIndexCache in ChunkManager layer. #4902

Closed
sachin-j-joshi opened this issue Jun 25, 2020 · 0 comments · Fixed by #5363
Assignees
Labels
area/lts kind/enhancement Improvements that should be made

Comments

@sachin-j-joshi
Copy link
Contributor

Problem description
ReadIndexCache is supposed to cache the most recently used <start offset, chunk name> tuples in memory using LRU strategy.
During eviction the current implementation scans all cached entries for given segment which is inefficient.

Problem location
io.pravega.segmentstore.storage.chunklayer.ReadIndexCache::evictChunks

Suggestions for an improvement
Use Guava cache as underlying cache implementation.
Correctly handle cleaning up auxiliary data structures when entries are evicted. (Eg ConcurrentSkipList based per segment index)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/lts kind/enhancement Improvements that should be made
Projects
None yet
1 participant