mirror of
https://github.com/ipfs/kubo.git
synced 2026-03-04 07:48:00 +08:00
Merge pull request #3494 from ipfs/fix/gc-timeout
Remove GC timeout, fix GC tests
This commit is contained in:
commit
e2ba43c12d
@ -190,26 +190,11 @@ func (gc *GC) maybeGC(ctx context.Context, offset uint64) error {
|
||||
// Do GC here
|
||||
log.Info("Watermark exceeded. Starting repo GC...")
|
||||
defer log.EventBegin(ctx, "repoGC").Done()
|
||||
// 1 minute is sufficient for ~1GB unlink() blocks each of 100kb in SSD
|
||||
_ctx, cancel := context.WithTimeout(ctx, time.Duration(gc.SlackGB)*time.Minute)
|
||||
defer cancel()
|
||||
|
||||
if err := GarbageCollect(gc.Node, _ctx); err != nil {
|
||||
if err := GarbageCollect(gc.Node, ctx); err != nil {
|
||||
return err
|
||||
}
|
||||
newStorage, err := gc.Repo.GetStorageUsage()
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
log.Infof("Repo GC done. Released %s\n", humanize.Bytes(uint64(storage-newStorage)))
|
||||
if newStorage > gc.StorageGC {
|
||||
log.Warningf("post-GC: Watermark still exceeded")
|
||||
if newStorage > gc.StorageMax {
|
||||
err := ErrMaxStorageExceeded
|
||||
log.Error(err)
|
||||
return err
|
||||
}
|
||||
}
|
||||
log.Infof("Repo GC done. See `ipfs repo stat` to see how much space got freed.\n")
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
Loading…
Reference in New Issue
Block a user