diff --git a/changelogs/unreleased/6136-ywk253100 b/changelogs/unreleased/6136-ywk253100 new file mode 100644 index 000000000..d002e335a --- /dev/null +++ b/changelogs/unreleased/6136-ywk253100 @@ -0,0 +1 @@ +Ignore not found error during patching managedFields \ No newline at end of file diff --git a/pkg/restore/restore.go b/pkg/restore/restore.go index 7496122a9..e163c2e9a 100644 --- a/pkg/restore/restore.go +++ b/pkg/restore/restore.go @@ -1514,10 +1514,13 @@ func (ctx *restoreContext) restoreItem(obj *unstructured.Unstructured, groupReso if patchBytes != nil { if _, err = resourceClient.Patch(name, patchBytes); err != nil { ctx.log.Errorf("error patch for managed fields %s: %v", kube.NamespaceAndName(obj), err) - errs.Add(namespace, err) - return warnings, errs, itemExists + if !apierrors.IsNotFound(err) { + errs.Add(namespace, err) + return warnings, errs, itemExists + } + } else { + ctx.log.Infof("the managed fields for %s is patched", kube.NamespaceAndName(obj)) } - ctx.log.Infof("the managed fields for %s is patched", kube.NamespaceAndName(obj)) } if groupResource == kuberesource.Pods {