Heal format by inspection should avoid picking minioMetaBucket dir if the latter comes first in the list (listDir not ordered) (#2426)

master
Anis Elleuch 8 years ago committed by Harshavardhana
parent fdab984c8d
commit 64dc2a2e7f
  1. 15
      format-config-v1.go

@ -561,14 +561,25 @@ func reorderDisksByInspection(orderedDisks, storageDisks []StorageAPI, formatCon
if len(vols) == 0 { if len(vols) == 0 {
continue continue
} }
objects, err := storageDisks[index].ListDir(vols[0].Name, "") volName := ""
// Avoid picking minioMetaBucket because ListVols() returns a non ordered list
for i := range vols {
if vols[i].Name != minioMetaBucket {
volName = vols[i].Name
break
}
}
if volName == "" {
continue
}
objects, err := storageDisks[index].ListDir(volName, "")
if err != nil { if err != nil {
return nil, err return nil, err
} }
if len(objects) == 0 { if len(objects) == 0 {
continue continue
} }
xlData, err := readXLMeta(storageDisks[index], vols[0].Name, objects[0]) xlData, err := readXLMeta(storageDisks[index], volName, objects[0])
if err != nil { if err != nil {
if err == errFileNotFound { if err == errFileNotFound {
continue continue

Loading…
Cancel
Save