Skip to content

negative nativeHistogramBucketLimit breaks reconciliation #1128

@ctrought

Description

@ctrought

Creating a ServiceMonitor with nativeHistogramBucketLimit set negative (outside range of uint64) can break the operator, it was not reconciling changes to Prometheus instances while a ServiceMonitor in the namespace had the negative value set.

COO Version: 1.3.1
OCP Version: 4.18.33

ts=2026-06-12T18:25:21.159784115Z level=error caller=/cachi2/output/deps/gomod/pkg/mod/k8s.io/client-go@v0.34.2/tools/cache/reflector.go:205 msg="Failed to watch" logger=UnhandledError err="failed to list *v1.ServiceMonitor: json: cannot unmarshal number -2 into Go struct field ServiceMonitorSpec.items.spec.NativeHistogramConfig.nativeHistogramBucketLimit of type uint64" reflector=pkg/mod/k8s.io/client-go@v0.34.2/tools/cache/reflector.go:290 type=*v1.ServiceMonitor
  apiVersion: monitoring.rhobs/v1
  kind: ServiceMonitor
  metadata:
...
  spec:
    nativeHistogramBucketLimit: -2

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions