diff --git a/pkg/controller/podautoscaler/replica_calculator.go b/pkg/controller/podautoscaler/replica_calculator.go index 32ce877a345..b065fce3743 100644 --- a/pkg/controller/podautoscaler/replica_calculator.go +++ b/pkg/controller/podautoscaler/replica_calculator.go @@ -71,24 +71,22 @@ func (c *ReplicaCalculator) GetResourceReplicas(ctx context.Context, currentRepl if err != nil { return 0, 0, 0, time.Time{}, fmt.Errorf("unable to get pods while calculating replica count: %v", err) } - - itemsLen := len(podList) - if itemsLen == 0 { + if len(podList) == 0 { return 0, 0, 0, time.Time{}, fmt.Errorf("no pods returned by selector while calculating replica count") } readyPodCount, unreadyPods, missingPods, ignoredPods := groupPods(podList, metrics, resource, c.cpuInitializationPeriod, c.delayOfInitialReadinessStatus) removeMetricsForPods(metrics, ignoredPods) removeMetricsForPods(metrics, unreadyPods) + if len(metrics) == 0 { + return 0, 0, 0, time.Time{}, fmt.Errorf("did not receive metrics for any ready pods") + } + requests, err := calculatePodRequests(podList, container, resource) if err != nil { return 0, 0, 0, time.Time{}, err } - if len(metrics) == 0 { - return 0, 0, 0, time.Time{}, fmt.Errorf("did not receive metrics for any ready pods") - } - usageRatio, utilization, rawUtilization, err := metricsclient.GetResourceUtilizationRatio(metrics, requests, targetUtilization) if err != nil { return 0, 0, 0, time.Time{}, err