Merge pull request #122087 from fatsheep9146/fix-kubelet-trace-broke
fix kubelet trace broke in 1.28
This commit is contained in:
@@ -1945,13 +1945,14 @@ func (kl *Kubelet) SyncPod(ctx context.Context, updateType kubetypes.SyncPodType
|
||||
}
|
||||
}
|
||||
|
||||
// TODO(#113606): connect this with the incoming context parameter, which comes from the pod worker.
|
||||
// Currently, using that context causes test failures. To remove this todoCtx, any wait.Interrupted
|
||||
// errors need to be filtered from result and bypass the reasonCache - cancelling the context for
|
||||
// SyncPod is a known and deliberate error, not a generic error.
|
||||
todoCtx := context.TODO()
|
||||
// TODO(#113606): use cancellation from the incoming context parameter, which comes from the pod worker.
|
||||
// Currently, using cancellation from that context causes test failures. To remove this WithoutCancel,
|
||||
// any wait.Interrupted errors need to be filtered from result and bypass the reasonCache - cancelling
|
||||
// the context for SyncPod is a known and deliberate error, not a generic error.
|
||||
// Use WithoutCancel instead of a new context.TODO() to propagate trace context
|
||||
// Call the container runtime's SyncPod callback
|
||||
result := kl.containerRuntime.SyncPod(todoCtx, pod, podStatus, pullSecrets, kl.backOff)
|
||||
sctx := context.WithoutCancel(ctx)
|
||||
result := kl.containerRuntime.SyncPod(sctx, pod, podStatus, pullSecrets, kl.backOff)
|
||||
kl.reasonCache.Update(pod.UID, result)
|
||||
if err := result.Error(); err != nil {
|
||||
// Do not return error if the only failures were pods in backoff
|
||||
|
||||
Reference in New Issue
Block a user