diff --git a/staging/src/k8s.io/apiserver/pkg/admission/plugin/webhook/mutating/dispatcher.go b/staging/src/k8s.io/apiserver/pkg/admission/plugin/webhook/mutating/dispatcher.go index c1d1ca6ff6b..ca42558916a 100644 --- a/staging/src/k8s.io/apiserver/pkg/admission/plugin/webhook/mutating/dispatcher.go +++ b/staging/src/k8s.io/apiserver/pkg/admission/plugin/webhook/mutating/dispatcher.go @@ -198,6 +198,10 @@ func (a *mutatingDispatcher) Dispatch(ctx context.Context, attr admission.Attrib } if callErr, ok := err.(*webhookutil.ErrCallingWebhook); ok { + if ctx.Err() == context.Canceled { + klog.Warningf("Context Canceled when calling webhook %v", hook.Name) + return err + } if ignoreClientCallFailures { klog.Warningf("Failed calling webhook, failing open %v: %v", hook.Name, callErr) admissionmetrics.Metrics.ObserveWebhookFailOpen(ctx, hook.Name, "admit") diff --git a/staging/src/k8s.io/apiserver/pkg/admission/plugin/webhook/validating/dispatcher.go b/staging/src/k8s.io/apiserver/pkg/admission/plugin/webhook/validating/dispatcher.go index 14312fadd54..2d9216d4f21 100644 --- a/staging/src/k8s.io/apiserver/pkg/admission/plugin/webhook/validating/dispatcher.go +++ b/staging/src/k8s.io/apiserver/pkg/admission/plugin/webhook/validating/dispatcher.go @@ -193,6 +193,10 @@ func (d *validatingDispatcher) Dispatch(ctx context.Context, attr admission.Attr } if callErr, ok := err.(*webhookutil.ErrCallingWebhook); ok { + if ctx.Err() == context.Canceled { + klog.Warningf("Context Canceled when calling webhook %v", hook.Name) + return + } if ignoreClientCallFailures { klog.Warningf("Failed calling webhook, failing open %v: %v", hook.Name, callErr) admissionmetrics.Metrics.ObserveWebhookFailOpen(ctx, hook.Name, "validating")