Browse Source

Remove duplication checking for the existence of endpoint

CreateEndpoint will check if the endpoint exist or not, so there is no
need to check before call CreatEndpoint in connectToNetwork since
checking the existence of the endpoint could take much time especially
if we use external K-V store, this would slow down the staring of container.

Signed-off-by: Lei Jitang <leijitang@huawei.com>
Lei Jitang 9 years ago
parent
commit
f62d4ceba6
1 changed files with 1 additions and 10 deletions
  1. 1 10
      daemon/container_operations_unix.go

+ 1 - 10
daemon/container_operations_unix.go

@@ -758,22 +758,13 @@ func (daemon *Daemon) connectToNetwork(container *container.Container, idOrName
 		container.NetworkSettings.Networks[n.Name()] = endpointConfig
 		container.NetworkSettings.Networks[n.Name()] = endpointConfig
 	}
 	}
 
 
-	ep, err := container.GetEndpointInNetwork(n)
-	if err == nil {
-		return fmt.Errorf("Conflict. A container with name %q is already connected to network %s.", strings.TrimPrefix(container.Name, "/"), idOrName)
-	}
-
-	if _, ok := err.(libnetwork.ErrNoSuchEndpoint); !ok {
-		return err
-	}
-
 	createOptions, err := container.BuildCreateEndpointOptions(n)
 	createOptions, err := container.BuildCreateEndpointOptions(n)
 	if err != nil {
 	if err != nil {
 		return err
 		return err
 	}
 	}
 
 
 	endpointName := strings.TrimPrefix(container.Name, "/")
 	endpointName := strings.TrimPrefix(container.Name, "/")
-	ep, err = n.CreateEndpoint(endpointName, createOptions...)
+	ep, err := n.CreateEndpoint(endpointName, createOptions...)
 	if err != nil {
 	if err != nil {
 		return err
 		return err
 	}
 	}