mirror of
https://github.com/kvcache-ai/Mooncake.git
synced 2026-11-05 01:17:55 +00:00
[PR #1028] [MERGED] [store] Add disk eviction feature #1965
Labels
No labels
ascend
auto-closed
bug
bug
CI/Build
Common
documentation
enhancement
feature request
good first issue
help wanted
high priority
MetaX
nightly-failure
pull-request
PyTorch Backend
question
RFC
Roadmap
stale
Store
Tests
Transfer Engine
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
kvcache-ai/Mooncake#1965
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
📋 Pull Request Information
Original PR: https://github.com/kvcache-ai/Mooncake/pull/1028
Author: @Bo-Vincent
Created: 11/6/2025
Status: ✅ Merged
Merged: 11/20/2025
Merged by: @stmatengss
Base:
main← Head:anolis-mooncake/vin/disk-evict📝 Commits (1)
0e438f9[store] Add disk eviction feature📊 Changes
13 files changed (+978 additions, -91 deletions)
View changed files
📝
mooncake-store/include/client.h(+3 -1)📝
mooncake-store/include/master_client.h(+3 -0)📝
mooncake-store/include/master_config.h(+22 -0)📝
mooncake-store/include/master_service.h(+10 -0)📝
mooncake-store/include/rpc_service.h(+2 -0)📝
mooncake-store/include/rpc_types.h(+17 -0)📝
mooncake-store/include/storage_backend.h(+184 -9)📝
mooncake-store/src/client.cpp(+56 -18)📝
mooncake-store/src/master.cpp(+20 -0)📝
mooncake-store/src/master_client.cpp(+16 -0)📝
mooncake-store/src/master_service.cpp(+15 -0)📝
mooncake-store/src/rpc_service.cpp(+13 -0)📝
mooncake-store/src/storage_backend.cpp(+617 -63)📄 Description
This pull request introduces a disk eviction mechanism to the StorageBackend. This feature ensures that the storage system can gracefully handle situations where disk space is exhausted by automatically removing older files to make space for new writes, preventing out-of-space errors.
Currently, when the allocated disk quota is fully utilized, any new write operations (StoreObject) will fail with an out-of-space or insufficient space error. This can lead to service disruptions and requires manual intervention to clear up space.
To build a more resilient and self-managing storage system, we need an automated mechanism that can reclaim space when the storage backend is under pressure. This PR addresses this need by implementing a disk eviction strategy.
🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.