Skip to content

CornerCase: Kueue blocks scheduling of workloads if they request "0" or resource not present in CQ definition #8079

@mimowo

Description

@mimowo

What happened:

Kueue would not admit workloads which request "0" of a resource which is not defined in the ClusterQueue, for example

What you expected to happen:

Kueue would admit workloads which request "0" of some resource, even if not declared in CQ.

I expect that because the vanilla kubernetes schedules Pods which request 0 nvidia.com/gpu, even if Node does not provide GPU.

How to reproduce it (as minimally and precisely as possible):

apiVersion: kueue.x-k8s.io/v1beta1
kind: ClusterQueue
metadata:
  name: "cluster-queue"
spec:
  namespaceSelector: {} # match all.
  resourceGroups:
  - coveredResources: ["memory"]
    flavors:
    - name: "default-flavor"
      resources:
      - name: "memory"
        nominalQuota: 36Gi

and Job

apiVersion: batch/v1
kind: Job
metadata:
  generateName: sample-job
  namespace: default
  labels:
    kueue.x-k8s.io/queue-name: user-queue
spec:
  parallelism: 3
  completions: 3
  completionMode: Indexed
  template:
    spec:
      containers:
      - name: dummy-job
        image: gcr.io/k8s-staging-perf-tests/sleep:v0.1.0
        args: ["10s"]
        resources:
          limits:
            "nvidia.com/gpu": 0
          requests:
            "nvidia.com/gpu": 0
            memory: "200Mi"
      restartPolicy: Never

Will fail workload scheduling with:

  status:
    conditions:
    - lastTransitionTime: "2025-12-04T16:23:57Z"
      message: 'couldn''t assign flavors to pod set main: resource nvidia.com/gpu
        unavailable in ClusterQueue'
      observedGeneration: 1
      reason: Pending
      status: "False"
      type: QuotaReserved

Metadata

Metadata

Assignees

No one assigned

    Labels

    kind/bugCategorizes issue or PR as related to a bug.

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions