From 6a62acc6e21a3a3a5a61ed93678a545d65291bdf Mon Sep 17 00:00:00 2001 From: Zbynek Roubalik <726523+zroubalik@users.noreply.github.com> Date: Mon, 15 Mar 2021 22:30:20 +0100 Subject: [PATCH] Fixing behavior on ScaledJob with incorrect External Scaler (#1672) Signed-off-by: Zbynek Roubalik --- CHANGELOG.md | 1 + pkg/scaling/scale_handler.go | 6 ++++-- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index a76debe9e6f..e599e25583a 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -38,6 +38,7 @@ - Fix memory leak of `keda-metrics-apiserver` by setting a controller-runtime logger properly ([#1654](https://github.com/kedacore/keda/pull/1654)) - Add `publishRate` trigger to RabbitMQ scaler ([#1653](https://github.com/kedacore/keda/pull/1653)) - AWS SQS Scaler: Add Visible + NotVisible messages for scaling considerations ([#1664](https://github.com/kedacore/keda/pull/1664)) +- Fixing behavior on ScaledJob with incorrect External Scaler ([#1672](https://github.com/kedacore/keda/pull/1672)) ### Breaking Changes diff --git a/pkg/scaling/scale_handler.go b/pkg/scaling/scale_handler.go index 6b02b8ea32e..f038f9f577c 100644 --- a/pkg/scaling/scale_handler.go +++ b/pkg/scaling/scale_handler.go @@ -245,8 +245,10 @@ func (h *scaleHandler) checkScaledJobScalers(ctx context.Context, scalers []scal scalerLogger := h.logger.WithValues("Scaler", scaler) metricSpecs := scaler.GetMetricSpecForScaling() - // skip cpu/memory resource scaler - if metricSpecs[0].External == nil { + + // skip scaler that doesn't return any metric specs (usually External scaler with incorrect metadata) + // or skip cpu/memory resource scaler + if len(metricSpecs) < 1 || metricSpecs[0].External == nil { continue }