-
Notifications
You must be signed in to change notification settings - Fork 284
S3fifo single ghost #22173
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
base: main
Are you sure you want to change the base?
S3fifo single ghost #22173
Conversation
… s3fifo-race-main
You are nearing your monthly Qodo Merge usage quota. For more information, please visit here. PR Code Suggestions ✨Explore these optional code suggestions:
|
User description
What type of PR is this?
Which issue(s) this PR fixes:
issue #21838
What this PR does / why we need it:
single mutex with ghost
PR Type
Bug fix, Enhancement
Description
Fix S3-FIFO cache race conditions with single mutex
Add ghost queue for improved cache hit rates
Implement proper reference counting for cache data
Add configuration option to disable S3-FIFO
Changes diagram
Changes walkthrough 📝
7 files
Add disable S3-FIFO parameter to meta cache init
Add disable S3-FIFO parameter to meta cache init
Add DisableS3Fifo configuration option
Add disable S3-FIFO parameter to disk cache
Add disable S3-FIFO parameter to cache initialization
Add disable S3-FIFO parameter to S3 cache initialization
Add disable S3-FIFO configuration and update meta cache
7 files
Replace atomic operations with mutex for thread safety
Implement proper reference counting and path deletion
Rewrite S3-FIFO with single mutex and ghost queue
Add thread safety and size tracking to queue
Change Release method to return boolean
Handle cache data release return value
Remove redundant retain/release calls in post functions
11 files
Add panic tests for double free scenarios
Update test calls with new disable parameter
Update test calls with new disable parameter
Add comprehensive cache performance benchmarks
Update benchmark tests with disable parameter
Update tests and fix release method signature
Add comprehensive S3-FIFO algorithm tests
Add tests for sharded hash map operations
Update test calls with new disable parameter
Update tests and add double free check
Update benchmark tests with disable parameter
2 files
Implement thread-safe ghost queue for S3-FIFO
Implement thread-safe sharded hash map