mirror of
https://github.com/moby/moby.git
synced 2022-11-09 12:21:53 -05:00
Allow endpoint delete if sandbox identifier is stale
There are cases as seen in https://github.com/docker/docker/issues/17984 the sandbox could be stale in endpoint structure, when the actual sandbox is removed during the cleanup phase. Hence instead of just validating for sandboxID, make sure if it is actually present in the sandboxes DB managed by the controller. Signed-off-by: Madhu Venugopal <madhu@docker.com>
This commit is contained in:
parent
7095714c10
commit
1aa88fa870
2 changed files with 3 additions and 2 deletions
|
@ -584,7 +584,8 @@ func (ep *endpoint) Delete() error {
|
|||
ep.Lock()
|
||||
epid := ep.id
|
||||
name := ep.name
|
||||
if ep.sandboxID != "" {
|
||||
sb, _ := n.getController().SandboxByID(ep.sandboxID)
|
||||
if sb != nil {
|
||||
ep.Unlock()
|
||||
return &ActiveContainerError{name: name, id: epid}
|
||||
}
|
||||
|
|
|
@ -112,7 +112,7 @@ function is_network_exist() {
|
|||
|
||||
for j in `seq 1 3`;
|
||||
do
|
||||
run dnet_cmd $(inst_id2port 2) service unpublish ${osvc}.${oname}
|
||||
run dnet_cmd $(inst_id2port $i) service unpublish ${osvc}.${oname}
|
||||
echo ${output}
|
||||
[ "$status" -ne 0 ]
|
||||
run dnet_cmd $(inst_id2port $j) network rm ${oname}
|
||||
|
|
Loading…
Reference in a new issue