Heal corrupted formats of disks already containing objects (#2297)

This commit is contained in:
Anis Elleuch
2016-07-29 01:49:59 +02:00
committed by Harshavardhana
parent f239fcac67
commit 14cefd352c
3 changed files with 325 additions and 3 deletions
+4
View File
@@ -145,6 +145,10 @@ func newXLObjects(disks, ignoredDisks []string) (ObjectLayer, error) {
// Handles different cases properly.
switch reduceFormatErrs(sErrs, len(storageDisks)) {
case errCorruptedFormat:
if err := healFormatXLCorruptedDisks(storageDisks); err != nil {
return nil, fmt.Errorf("Unable to repair corrupted format, %s", err)
}
case errUnformattedDisk:
// All drives online but fresh, initialize format.
if err := initFormatXL(storageDisks); err != nil {