Fix calculation of node's free EC shard slots. (#6584)

This commit is contained in:
Lisandro Pin authored and GitHub committed 2025-02-28 07:35:28 -08:00
1 parent 314f211260
commit 76a111f0a2
2 files changed
+97 -1

No files matched your search

+7 -1
View File
@@ -429,7 +429,13 @@ func countFreeShardSlots(dn *master_pb.DataNodeInfo, diskType types.DiskType) (c
if diskInfo == nil {
return 0
}
return int(diskInfo.MaxVolumeCount-diskInfo.VolumeCount)*erasure_coding.DataShardsCount - countShards(diskInfo.EcShardInfos)
slots := int(diskInfo.MaxVolumeCount-diskInfo.VolumeCount)*erasure_coding.DataShardsCount - countShards(diskInfo.EcShardInfos)
if slots < 0 {
return 0
}
return slots
}
func (ecNode *EcNode) localShardIdCount(vid uint32) int {