diff --git a/cmd/bucket-replication-utils.go b/cmd/bucket-replication-utils.go index f5a88eb41..3024740be 100644 --- a/cmd/bucket-replication-utils.go +++ b/cmd/bucket-replication-utils.go @@ -349,8 +349,6 @@ type ReplicationState struct { // Equal returns true if replication state is identical for version purge statuses and (replica)tion statuses. func (rs *ReplicationState) Equal(o ReplicationState) bool { return rs.ReplicaStatus == o.ReplicaStatus && - rs.ReplicaTimeStamp.Equal(o.ReplicaTimeStamp) && - rs.ReplicationTimeStamp.Equal(o.ReplicationTimeStamp) && rs.ReplicationStatusInternal == o.ReplicationStatusInternal && rs.VersionPurgeStatusInternal == o.VersionPurgeStatusInternal } @@ -366,7 +364,10 @@ func (rs *ReplicationState) CompositeReplicationStatus() (st replication.StatusT replStatus := getCompositeReplicationStatus(rs.Targets) // return REPLICA status if replica received timestamp is later than replication timestamp // provided object replication completed for all targets. - if !rs.ReplicaTimeStamp.Equal(timeSentinel) && replStatus == replication.Completed && rs.ReplicaTimeStamp.After(rs.ReplicationTimeStamp) { + if rs.ReplicaTimeStamp.Equal(timeSentinel) || rs.ReplicaTimeStamp.IsZero() { + return replStatus + } + if replStatus == replication.Completed && rs.ReplicaTimeStamp.After(rs.ReplicationTimeStamp) { return rs.ReplicaStatus } return replStatus diff --git a/cmd/erasure-metadata.go b/cmd/erasure-metadata.go index 5b24467fc..929988c4d 100644 --- a/cmd/erasure-metadata.go +++ b/cmd/erasure-metadata.go @@ -21,7 +21,6 @@ import ( "context" "encoding/hex" "fmt" - "net/http" "sort" "strconv" "strings" @@ -365,8 +364,6 @@ func findFileInfoInQuorum(ctx context.Context, metaArr []FileInfo, modTime time. // Server-side replication fields fmt.Fprintf(h, "%v", meta.MarkDeleted) fmt.Fprint(h, meta.Metadata[string(meta.ReplicationState.ReplicaStatus)]) - fmt.Fprint(h, meta.Metadata[meta.ReplicationState.ReplicationTimeStamp.Format(http.TimeFormat)]) - fmt.Fprint(h, meta.Metadata[meta.ReplicationState.ReplicaTimeStamp.Format(http.TimeFormat)]) fmt.Fprint(h, meta.Metadata[meta.ReplicationState.ReplicationStatusInternal]) fmt.Fprint(h, meta.Metadata[meta.ReplicationState.VersionPurgeStatusInternal])