fix: 当totalWeight小于等于0时设置为1选择第一个渠道

This commit is contained in:
creamlike1024
2025-10-29 19:41:45 +08:00
parent 1f419a3c71
commit cba21eb8c7

View File

@@ -166,6 +166,11 @@ func GetRandomSatisfiedChannel(group string, model string, retry int) (*Channel,
}
// Calculate the total weight of all channels up to endIdx
totalWeight := sumWeight * smoothingFactor
// totalWeight 小于等于0时设置为1选择第一个渠道
if totalWeight <= 0 {
totalWeight = 1
}
// Generate a random value in the range [0, totalWeight)
randomWeight := rand.Intn(totalWeight)