Describe the solution you'd like
An iteration of a reconcile loop should be bounded by a default deadline. In other words, a single execution of reconcile in a controller should not be able to run indefinitely.
As of today, there are several code paths where context.TODO() is used for a context. This context provides no ability to cancel or bound execution on those code paths. Some of these code paths will need to have a context piped in through functions up the call stack, and may have more widespread impact to function signatures.
/kind feature
Describe the solution you'd like An iteration of a reconcile loop should be bounded by a default deadline. In other words, a single execution of reconcile in a controller should not be able to run indefinitely.
As of today, there are several code paths where
context.TODO()
is used for a context. This context provides no ability to cancel or bound execution on those code paths. Some of these code paths will need to have a context piped in through functions up the call stack, and may have more widespread impact to function signatures.Examples:
TODOs:
context.TODO
and replace with bounded contextsSee Also