-
Notifications
You must be signed in to change notification settings - Fork 3.7k
enhance: [2.6] support pause GC at collection level (#45943) #46201
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: 2.6
Are you sure you want to change the base?
Conversation
Add collection-level granularity to the garbage collector pause/resume mechanism. Previously, GC pause affected all collections globally. Now operators can pause GC for specific collections while allowing other collections to continue normal GC operations. Changes: - Add `pausedCollection` concurrent map to track per-collection pause state - Extend `Pause()` and `Resume()` methods with `collectionID` parameter - Add `collectionGCPaused()` helper to check collection pause status - Skip dropped segment recycling when collection GC is paused - Update management API to accept optional `collection_id` query parameter - Add `GetInt64Value()` utility function for parsing int64 from KV pairs - Maintain backward compatibility: collectionID <= 0 triggers global pause This provides DevOps with finer control over Milvus data lifecycle. issue: milvus-io#45941 --------- Signed-off-by: Congqi Xia <congqi.xia@zilliz.com>
|
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: congqixia The full list of commands accepted by this bot can be found here. The pull request process is described here
Needs approval from an approver in each of these files:
Approvers can indicate their approval by writing |
|
[ci-v2-notice]
To rerun ci-v2 checks, comment with:
If you have any questions or requests, please contact @zhikunyao. |
|
[INFO] PR Label Summary by Default
Use /refresh-label to update related check and label manually |
Codecov Report❌ Patch coverage is Additional details and impacted files@@ Coverage Diff @@
## 2.6 #46201 +/- ##
==========================================
- Coverage 76.99% 76.06% -0.93%
==========================================
Files 1700 1876 +176
Lines 262533 291961 +29428
==========================================
+ Hits 202142 222092 +19950
- Misses 53550 62473 +8923
- Partials 6841 7396 +555
🚀 New features to boost your workflow:
|
Cherry-pick from master
pr: #45943
Add collection-level granularity to the garbage collector pause/resume mechanism. Previously, GC pause affected all collections globally. Now operators can pause GC for specific collections while allowing other collections to continue normal GC operations.
Changes:
pausedCollectionconcurrent map to track per-collection pause statePause()andResume()methods withcollectionIDparametercollectionGCPaused()helper to check collection pause statuscollection_idquery parameterGetInt64Value()utility function for parsing int64 from KV pairsThis provides DevOps with finer control over Milvus data lifecycle.
issue: #45941