Skip to content

KEDA autoscaling example uses wrong Bull queue key (bull:default:wait) #173

Description

@krider2010

The KEDA autoscaling example points the Redis-list scaler at the wrong Bull queue key, so queue-depth autoscaling never actually fires.

We use bull:default:wait in a few places:

  • charts/n8n/examples/keda-autoscaling.yaml:35
  • charts/n8n/values.yaml:504
  • charts/n8n/README.md:226

But n8n names the queue jobs, not default. From n8n source (n8n-io/n8n):

  • packages/cli/src/scaling/constants.tsexport const QUEUE_NAME = 'jobs';
  • packages/cli/src/scaling/scaling.service.tsnew BullQueue(QUEUE_NAME, { prefix, ... })
  • packages/@n8n/config/src/configs/scaling-mode.config.ts — default prefix bull (docstring @example 'bull:jobs:23')

Bull composes keys as <prefix>:<queueName>:<state>, so the correct key is bull:jobs:wait. As written, LLEN bull:default:wait returns a constant 0 and the ScaledObject never scales workers on backlog — it silently falls back to whatever other triggers are configured.

Fix is a straightforward find/replace of bull:default:wait -> bull:jobs:wait across those three files (prefix is still overridable via QUEUE_BULL_PREFIX).

Surfaced while reviewing #169, whose ECS Fargate Lambda uses the correct bull:jobs:wait — this is the chart side of the same key.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions