-
Notifications
You must be signed in to change notification settings - Fork 18.9k
Open
Labels
area/runtimeRuntimeRuntimekind/featureFunctionality or other elements that the project doesn't currently have. Features are new and shinyFunctionality or other elements that the project doesn't currently have. Features are new and shinystatus/0-triage
Description
Description
Within containerd's current design, if the shim is killed before task-service.Delete API call, the callback on connect close will send 137 exit code because the callback doesn't have any context about container's exit code.
And the moby/moby can't handle duplicate exit event well. Let's say that the moby receives exit code 0 at first and then the duplicate exit event with different code 137 can override 0, as the containerd/containerd#4769 described.
And the containerd task events are best-effort mode because there is no cache and it's handled by shim. I think it's hard to guarantee the exit status is correct. So, I suggest to use task.Wait API instead of event.
Metadata
Metadata
Assignees
Labels
area/runtimeRuntimeRuntimekind/featureFunctionality or other elements that the project doesn't currently have. Features are new and shinyFunctionality or other elements that the project doesn't currently have. Features are new and shinystatus/0-triage