From 0accff0e4a9bf39484774d03e01007c08e27d59a Mon Sep 17 00:00:00 2001 From: Chris Lu Date: Thu, 21 May 2026 10:35:34 -0700 Subject: [PATCH] fix(ec): log EC destination planning failures at v=2 The maintenance scanner tries to plan EC destinations for every eligible volume, so clusters that can't place EC logged a warning per volume every cycle. The min-node gate already skips clusters with fewer nodes than parity shards; demote the rest to V(2). --- weed/worker/tasks/erasure_coding/detection.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/weed/worker/tasks/erasure_coding/detection.go b/weed/worker/tasks/erasure_coding/detection.go index 9b70e7ffc..c333032b7 100644 --- a/weed/worker/tasks/erasure_coding/detection.go +++ b/weed/worker/tasks/erasure_coding/detection.go @@ -226,7 +226,7 @@ func Detection(ctx context.Context, metrics []*types.VolumeHealthMetrics, cluste parityShards := erasure_coding.ParityShardsCount multiPlan, err := planECDestinations(planner, metric, ecConfig, dataShards, parityShards) if err != nil { - glog.Warningf("Failed to plan EC destinations for volume %d: %v", metric.VolumeID, err) + glog.V(2).Infof("Failed to plan EC destinations for volume %d: %v", metric.VolumeID, err) consecutivePlanningFailures++ if len(results) >= minProposalsBeforeEarlyStop && consecutivePlanningFailures >= maxConsecutivePlanningFailures { glog.Warningf("EC Detection: stopping early after %d consecutive placement failures with %d proposals already planned", consecutivePlanningFailures, len(results))