fix: enable xl.json to xl.meta only if legacy drive is found (#11255)

another optimization is renameLegacyMetadata() never needs
to validate bucket with os.Stat() again, leading to reduction
in one extra syscall.
This commit is contained in:
Harshavardhana
2021-01-11 02:27:04 -08:00
committed by GitHub
parent e8176fe978
commit e4e117faab
4 changed files with 109 additions and 29 deletions

View File

@@ -332,17 +332,14 @@ func (s *storageRESTServer) ReadVersionHandler(w http.ResponseWriter, r *http.Re
s.writeErrorResponse(w, err)
return
}
fi, err := s.storage.ReadVersion(r.Context(), volume, filePath, versionID, readData)
if err != nil {
s.writeErrorResponse(w, err)
return
}
bufp := s.storage.rpool.Get().(*[]byte)
defer s.storage.rpool.Put(bufp)
enc := msgp.NewWriterBuf(w, *bufp)
logger.LogIf(r.Context(), fi.EncodeMsg(enc))
enc.Flush()
logger.LogIf(r.Context(), msgp.Encode(w, &fi))
}
// WriteMetadata write new updated metadata.