From 6eae033f489b1f357fa926952caa704ac59fd040 Mon Sep 17 00:00:00 2001 From: Peng Tao Date: Wed, 11 Dec 2019 06:06:11 -0800 Subject: [PATCH] shimv2: cleanup container if not found Shutdown API relies on it being cleaned up in order to proceed. Otherwise it fails silently and shimv2 process never quits. This can be triggered by killing the vmm while pod is running. Fixes: #2345 Signed-off-by: Peng Tao --- containerd-shim-v2/delete.go | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/containerd-shim-v2/delete.go b/containerd-shim-v2/delete.go index ddf44a8192..0e4377124e 100644 --- a/containerd-shim-v2/delete.go +++ b/containerd-shim-v2/delete.go @@ -17,11 +17,11 @@ import ( ) func deleteContainer(ctx context.Context, s *service, c *container) error { - if !c.cType.IsSandbox() { - status, err := s.sandbox.StatusContainer(c.id) - if err != nil { - return err - } + status, err := s.sandbox.StatusContainer(c.id) + if err != nil && !isNotFound(err) { + return err + } + if !c.cType.IsSandbox() && err == nil { if status.State.State != types.StateStopped { _, err = s.sandbox.StopContainer(c.id, false) if err != nil {