diff --git a/cmd/prepare-storage.go b/cmd/prepare-storage.go index d62e4e957..ca7fa0cbc 100644 --- a/cmd/prepare-storage.go +++ b/cmd/prepare-storage.go @@ -98,12 +98,7 @@ func formatErasureCleanupTmp(diskPath string) { err)) } - if err := renameAll(tmpOld, pathJoin(diskPath, minioMetaTmpDeletedBucket, tmpID)); err != nil && !errors.Is(err, errFileNotFound) { - logger.LogIf(GlobalContext, fmt.Errorf("unable to rename (%s -> %s) %w, drive may be faulty please investigate", - pathJoin(diskPath, minioMetaTmpBucket), - tmpOld, - osErrToFileErr(err))) - } + go removeAll(tmpOld) // Renames and schedules for purging all bucket metacache. renameAllBucketMetacache(diskPath) diff --git a/cmd/xl-storage.go b/cmd/xl-storage.go index dae25a6b8..5cf6e7517 100644 --- a/cmd/xl-storage.go +++ b/cmd/xl-storage.go @@ -21,7 +21,6 @@ import ( "bytes" "context" "crypto/rand" - "encoding/hex" "errors" "fmt" "io" @@ -257,9 +256,8 @@ func newXLStorage(ep Endpoint) (s *xlStorage, err error) { if len(s.formatData) == 0 { // Unformatted disk check if O_DIRECT is supported. // Check if backend is writable and supports O_DIRECT - var rnd [32]byte - _, _ = rand.Read(rnd[:]) - filePath := pathJoin(s.diskPath, ".writable-check-"+hex.EncodeToString(rnd[:])+".tmp") + uuid := mustGetUUID() + filePath := pathJoin(s.diskPath, ".writable-check-"+uuid+".tmp") w, err := s.openFileDirect(filePath, os.O_CREATE|os.O_WRONLY|os.O_EXCL) if err != nil { return s, err @@ -272,7 +270,7 @@ func newXLStorage(ep Endpoint) (s *xlStorage, err error) { } return s, err } - Remove(filePath) + renameAll(filePath, pathJoin(s.diskPath, minioMetaTmpDeletedBucket, uuid)) // Create all necessary bucket folders if possible. if err = makeFormatErasureMetaVolumes(s); err != nil {