Use retryableStorage after healing format.json (#5105)

- Previously networkStorage was being used and this lead to errors
  when listing with a down server/disk

Fixes #5089
This commit is contained in:
Aditya Manthramurthy
2017-10-26 16:52:23 +00:00
committed by Dee Koder
parent db3fed2279
commit d23ded0d83
2 changed files with 32 additions and 29 deletions

View File

@@ -838,15 +838,19 @@ func (adminAPI adminAPIHandlers) HealFormatHandler(w http.ResponseWriter, r *htt
return
}
// Wrap into retrying disks
retryingDisks := initRetryableStorageDisks(bootstrapDisks,
time.Millisecond, time.Millisecond*5)
// Heal format.json on available storage.
err = healFormatXL(bootstrapDisks)
err = healFormatXL(retryingDisks)
if err != nil {
writeErrorResponse(w, toAPIErrorCode(err), r.URL)
return
}
// Instantiate new object layer with newly formatted storage.
newObjectAPI, err := newXLObjects(bootstrapDisks)
newObjectAPI, err := newXLObjects(retryingDisks)
if err != nil {
writeErrorResponse(w, toAPIErrorCode(err), r.URL)
return