upstream contribution ยท merged โœ“

silent failure in the unidling controller

github.com/ovn-kubernetes/ovn-kubernetes ยท PR #6558

๐Ÿฃ first โ€” what is "unidling"?

OpenShift can scale services to zero when unused.
When traffic arrives โ†’ the service "unidles" (wakes up).
The unidling controller handles this wake-up process.
It watches for traffic events and triggers pod scale-up.

๐Ÿ› three problems found

1. typo in log message
"ContollerEvent"  โ†’ should be  "ControllerEvent"
makes log searching unreliable โ€” grep finds nothing

2. typo in comment
"reconcilation"  โ†’ should be  "reconciliation"

3. ๐Ÿ”ด silent nil error โ€” the real bug
when the "vip" key is missing from an event,
the function returned nil instead of an error.
failure silently swallowed โ†’ unidling silently broken

๐Ÿ’ญ why does returning nil matter?

before fix

event arrives
"vip" key missing
โ†“
return nil โ† "all good!"
โ†“
caller: no retry
โ†“
service stays idle ๐Ÿ˜ถ

after fix

event arrives
"vip" key missing
โ†“
return error โ† "something's wrong"
โ†“
caller: retries + logs
โ†“
visible, debuggable โœ“

๐Ÿ’ก the rule

never return nil when something went wrong.
Silent failures are the hardest bugs to debug โ€”
the system looks healthy while quietly doing nothing.

If something unexpected happens โ†’ say so.
An error that surfaces is always better than one that hides.

merged: Jun 17 2026  |  repo: ovn-kubernetes/ovn-kubernetes  |  pr: #6558

small fix ยท big lesson ยท contributed by Parikshit Khedekar