垃圾回收 | Garbage Collection
Curio 中的垃圾回收和清理過程
Garbage Collection
垃圾回收
Sealing Pipeline cleanup
密封管道清理
SDRPipelineGC 是系統中的一個定期任務,確保存儲密封過程的效率和有效性。它負責清理密封管道中已完成的條目。
Process
過程
GC 通過移除已完成密封過程的密封管道條目來運作。這些條目的元數據已存儲在長期扇區元數據表(也稱為 sectors_meta
表)中。此操作有助於保持管道流暢和整潔,提高整體系統性能。
Handling failed sector
處理失敗的扇區
如果一個扇區在密封過程中失敗,其相應的條目可以通過網頁用戶界面(WebUI)手動移除。此功能允許主動管理管道條目,確保失敗的條目不會阻塞管道。
Storage Cleanup
存儲清理
StorageGCMark
組件負責掃描系統中的所有扇區文件。
在以下條件下,扇區文件將在 storage_removal_marks
表中被標記:
該扇區在
storage_gc_pins
表中沒有被"固定"。(扇區固定表示即使扇區已過期,也不應被移除。)該扇區不存在於名為
sectors_sdr_pipeline
的密封表中。該扇區被標記為"失敗"扇區。(注意,"失敗"的扇區必須首先從管道表中移除,然後才能對其數據進行垃圾回收。)
該扇區不存在於礦工參與者預提交扇區集中。
該扇區不存在於
Live
或Unproven
扇區集中。
Approval and Removal
批准和移除
來自 StorageGCMark
過程的移除標記需要單獨批准。目前,此批准僅通過 WebUI 提供。未來可能會擴展以允許自動批准,由自定義的選擇策略支持。
一旦移除標記獲得批准,定期的 StorageGCSweep
任務將審查所有已批准的移除標記。然後,此任務將繼續刪除已批准移除的文件。這最後階段確保系統中只保留必要的數據,優化存儲並改善整體系統功能。
Removing a failed sector
移除失敗的扇區
要移除在密封過程中失敗的扇區,用戶應前往 WebUI 的"PoRep"頁面,選擇相應扇區的"DETAILS"鏈接。此操作將引導他們到一個有"Remove"按鈕的頁面。點擊此按鈕後,失敗的扇區將從 SDR 管道表中移除,使其可供 StorageGCMark 過程標記為垃圾回收。
然而,扇區的移除只會在獲得必要的批准後進行。此批准可以在"Storage GC Info"頁面上提供。在收到批准後,StorageGCSweep 任務將審查標記並繼續刪除扇區文件,有效地從系統中移除失敗的扇區。
Last updated