diff --git a/buildscripts/resolve-right-versions.sh b/buildscripts/resolve-right-versions.sh index 066fc207c..61d2c149f 100755 --- a/buildscripts/resolve-right-versions.sh +++ b/buildscripts/resolve-right-versions.sh @@ -39,7 +39,7 @@ function start_minio_5drive() { "${MINIO[@]}" --address ":$start_port" "${WORK_DIR}/cicd-corpus/disk{1...5}" > "${WORK_DIR}/server1.log" 2>&1 & pid=$! disown $pid - sleep 30 + sleep 5 if ! ps -p ${pid} 1>&2 >/dev/null; then echo "server1 log:" diff --git a/cmd/erasure-object.go b/cmd/erasure-object.go index 79480f7ee..8b15870e1 100644 --- a/cmd/erasure-object.go +++ b/cmd/erasure-object.go @@ -534,6 +534,11 @@ func readAllXL(ctx context.Context, disks []StorageAPI, bucket, object string, r return metaFileInfos, errs } + versionID := lfi.VersionID + if versionID == "" { + versionID = nullVersionID + } + for index := range metadataArray { if metadataArray[index] == nil { continue @@ -541,21 +546,15 @@ func readAllXL(ctx context.Context, disks []StorageAPI, bucket, object string, r // make sure to preserve this for diskmtime based healing bugfix. diskMTime := metaFileInfos[index].DiskMTime - metaFileInfos[index], errs[index] = metadataArray[index].ToFileInfo(bucket, object, "") + metaFileInfos[index], errs[index] = metadataArray[index].ToFileInfo(bucket, object, versionID) if errs[index] != nil { continue } - if metaFileInfos[index].IsValid() && metaFileInfos[index].ModTime.Equal(lfi.ModTime) { - versionID := metaFileInfos[index].VersionID - if versionID == "" { - versionID = nullVersionID - } - if readData { - metaFileInfos[index].Data = metadataArray[index].data.find(versionID) - } - metaFileInfos[index].DiskMTime = diskMTime + if readData { + metaFileInfos[index].Data = metadataArray[index].data.find(versionID) } + metaFileInfos[index].DiskMTime = diskMTime } // Return all the metadata.