From fd342b5faaea2a5df402a0cc1040739c4de8e087 Mon Sep 17 00:00:00 2001 From: Antoine Pelisse Date: Tue, 18 Dec 2018 14:10:35 -0800 Subject: [PATCH] fix toleration of FieldManager errors We were updating the object to nil, so even though we tolerate errors, we were creating errors further down the process. --- .../k8s.io/apiserver/pkg/endpoints/handlers/patch.go | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/staging/src/k8s.io/apiserver/pkg/endpoints/handlers/patch.go b/staging/src/k8s.io/apiserver/pkg/endpoints/handlers/patch.go index 569716839ed..c9e4d6ea57a 100644 --- a/staging/src/k8s.io/apiserver/pkg/endpoints/handlers/patch.go +++ b/staging/src/k8s.io/apiserver/pkg/endpoints/handlers/patch.go @@ -304,8 +304,9 @@ func (p *jsonPatcher) applyPatchToCurrentObject(currentObject runtime.Object) (r } if p.fieldManager != nil { - objToUpdate, err = p.fieldManager.Update(currentObject, objToUpdate, "jsonPatcher") - if err != nil { + if obj, err := p.fieldManager.Update(currentObject, objToUpdate, "jsonPatcher"); err == nil { + objToUpdate = obj + } else { klog.Warningf("FieldManager: Failed to update object managed fields: %v", err) } } @@ -367,8 +368,9 @@ func (p *smpPatcher) applyPatchToCurrentObject(currentObject runtime.Object) (ru } if p.fieldManager != nil { - newObj, err = p.fieldManager.Update(currentObject, newObj, "smPatcher") - if err != nil { + if obj, err := p.fieldManager.Update(currentObject, newObj, "smPatcher"); err == nil { + newObj = obj + } else { klog.Warningf("FieldManager: Failed to update object managed fields: %v", err) } }