heal: Persist MRF queue in the disk during shutdown (#19410)

This commit is contained in:
Anis Eleuch
2024-08-13 23:26:05 +01:00
committed by GitHub
parent e7a56f35b9
commit 51b1f41518
10 changed files with 649 additions and 84 deletions

View File

@@ -187,19 +187,12 @@ func newErasureServerPools(ctx context.Context, endpointServerPools EndpointServ
globalLeaderLock = newSharedLock(GlobalContext, z, "leader.lock")
})
// Enable background operations on
//
// - Disk auto healing
// - MRF (most recently failed) healing
// - Background expiration routine for lifecycle policies
// Start self healing after the object initialization
// so various tasks will be useful
bootstrapTrace("initAutoHeal", func() {
initAutoHeal(GlobalContext, z)
})
bootstrapTrace("initHealMRF", func() {
go globalMRFState.healRoutine(z)
})
// initialize the object layer.
defer setObjectLayer(z)