[PR #1028] [MERGED] [store] Add disk eviction feature #1965

Closed
opened 2026-10-29 21:31:45 +00:00 by bsakaguchi · 0 comments
Owner

📋 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.

## 📋 Pull Request Information **Original PR:** https://github.com/kvcache-ai/Mooncake/pull/1028 **Author:** [@Bo-Vincent](https://github.com/Bo-Vincent) **Created:** 11/6/2025 **Status:** ✅ Merged **Merged:** 11/20/2025 **Merged by:** [@stmatengss](https://github.com/stmatengss) **Base:** `main` ← **Head:** `anolis-mooncake/vin/disk-evict` --- ### 📝 Commits (1) - [`0e438f9`](https://github.com/kvcache-ai/Mooncake/commit/0e438f9c4e3602fb3f04dfaa6de92a280524cd59) [store] Add disk eviction feature ### 📊 Changes **13 files changed** (+978 additions, -91 deletions) <details> <summary>View changed files</summary> 📝 `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) </details> ### 📄 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. --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
bsakaguchi 2026-10-29 21:31:45 +00:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
kvcache-ai/Mooncake#1965
No description provided.