From e210cb3670b9ab15d8662b9fdc6c12628d6c00b5 Mon Sep 17 00:00:00 2001 From: Krishnan Parthasarathi Date: Thu, 19 Aug 2021 14:55:42 -0700 Subject: [PATCH] fix: use transition/replication fields in FileInfo quorum calculation (#13010) --- cmd/erasure-metadata.go | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/cmd/erasure-metadata.go b/cmd/erasure-metadata.go index 1bfff0e01..053bbed6b 100644 --- a/cmd/erasure-metadata.go +++ b/cmd/erasure-metadata.go @@ -278,6 +278,18 @@ func findFileInfoInQuorum(ctx context.Context, metaArr []FileInfo, modTime time. h.Write([]byte(fmt.Sprintf("%v", meta.Erasure.Distribution))) // make sure that length of Data is same h.Write([]byte(fmt.Sprintf("%v", len(meta.Data)))) + + // ILM transition fields + h.Write([]byte(meta.TransitionStatus)) + h.Write([]byte(meta.TransitionTier)) + h.Write([]byte(meta.TransitionedObjName)) + h.Write([]byte(meta.TransitionVersionID)) + + // Server-side replication fields + h.Write([]byte(fmt.Sprintf("%v", meta.MarkDeleted))) + h.Write([]byte(meta.DeleteMarkerReplicationStatus)) + h.Write([]byte(meta.VersionPurgeStatus)) + h.Write([]byte(meta.Metadata[xhttp.AmzBucketReplicationStatus])) metaHashes[i] = hex.EncodeToString(h.Sum(nil)) h.Reset() }