|
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
|
|