aboutsummaryrefslogtreecommitdiff
path: root/weed/topology/node.go
diff options
context:
space:
mode:
authorKonstantin Lebedev <9497591+kmlebedev@users.noreply.github.com>2022-06-10 15:30:40 +0500
committerKonstantin Lebedev <9497591+kmlebedev@users.noreply.github.com>2022-06-10 15:30:40 +0500
commitfb57aa431c52b7b5575e2eadd52ed3045d6c6c51 (patch)
treeb52969a017c67d03c157e131fa57a917632848ce /weed/topology/node.go
parent4a5135961f71fa3b9a3b9b9267cf20e92372a8ec (diff)
downloadseaweedfs-fb57aa431c52b7b5575e2eadd52ed3045d6c6c51.tar.xz
seaweedfs-fb57aa431c52b7b5575e2eadd52ed3045d6c6c51.zip
stats master_replica_placement_mismatch
Diffstat (limited to 'weed/topology/node.go')
-rw-r--r--weed/topology/node.go9
1 files changed, 9 insertions, 0 deletions
diff --git a/weed/topology/node.go b/weed/topology/node.go
index 4772cb411..c5956177a 100644
--- a/weed/topology/node.go
+++ b/weed/topology/node.go
@@ -3,6 +3,7 @@ package topology
import (
"errors"
"github.com/chrislusf/seaweedfs/weed/glog"
+ "github.com/chrislusf/seaweedfs/weed/stats"
"github.com/chrislusf/seaweedfs/weed/storage/erasure_coding"
"github.com/chrislusf/seaweedfs/weed/storage/needle"
"github.com/chrislusf/seaweedfs/weed/storage/types"
@@ -246,6 +247,14 @@ func (n *NodeImpl) CollectDeadNodeAndFullVolumes(freshThreshHold int64, volumeSi
} else if float64(v.Size) > float64(volumeSizeLimit)*growThreshold {
n.GetTopology().chanCrowdedVolumes <- v
}
+ copyCount := v.ReplicaPlacement.GetCopyCount()
+ if copyCount > 1 {
+ if copyCount > len(n.GetTopology().Lookup(v.Collection, v.Id)) {
+ stats.MasterReplicaPlacementMismatch.WithLabelValues(v.Collection, v.Id.String()).Set(1)
+ } else {
+ stats.MasterReplicaPlacementMismatch.WithLabelValues(v.Collection, v.Id.String()).Set(0)
+ }
+ }
}
}
} else {