Ensure GC continues marking if _manifests is nonexistent

Signed-off-by: Tony Holdstock-Brown <tony@docker.com>
pull/1677/head
Tony Holdstock-Brown 2016-04-25 21:14:00 -07:00 committed by Richard Scothern
parent 6a992e1348
commit a5aaae1f06
1 changed files with 11 additions and 0 deletions

View File

@ -96,6 +96,17 @@ func markAndSweep(ctx context.Context, storageDriver driver.StorageDriver, regis
return nil
})
if err != nil {
// In certain situations such as unfinished uploads, deleting all
// tags in S3 or removing the _manifests folder manually, this
// error may be of type PathNotFound.
//
// In these cases we can continue marking other manifests safely.
if _, ok := err.(driver.PathNotFoundError); ok {
return nil
}
}
return err
})