mirror of
https://github.com/rustfs/rustfs.git
synced 2026-10-27 06:18:43 +00:00
aae5cc4919
* fix(scanner): persist partial progress after budget cancellation Separate progress-only cycles from observational and authoritative usage updates. Keep peer movement leases alive under the parent cycle context for a bounded drain after the scan budget stops the walk, while preserving the existing strict publication fences for emitted usage updates. Skip root rename fences and the usage persister when no update was emitted. Cover real lease admission, cancellation, bounded retries, and durable partial-cycle advancement without usage publication or dirty acknowledgement. Co-Authored-By: heihutu <heihutu@gmail.com> Co-Authored-By: zhi22915 <qiuzgang@gmail.com> * refactor(scanner): consolidate publication policy and ownership Classify emitted updates directly in the publication plan constructor and exercise that single policy from the namespace-admission tests. Share the parent cancellation state for read-only progress proof checks and move the one-use root fence into the persister, avoiding a child token allocation and a JSON string copy without changing lease or commit rules. Co-Authored-By: heihutu <heihutu@gmail.com> Co-Authored-By: zhi22915 <qiuzgang@gmail.com> --------- Co-authored-by: heihutu <heihutu@gmail.com> Co-authored-by: zhi22915 <qiuzgang@gmail.com>