Browse Source

Merge pull request #32654 from allencloud/use-make-slice-to-store-swarmkit-objects

use make slice to store cluster objects to improve efficiency
Brian Goff 8 years ago
parent
commit
a709f79c1a

+ 1 - 1
daemon/cluster/networks.go

@@ -37,7 +37,7 @@ func (c *Cluster) getNetworks(filters *swarmapi.ListNetworksRequest_Filters) ([]
 		return nil, err
 	}
 
-	var networks []apitypes.NetworkResource
+	networks := make([]apitypes.NetworkResource, 0, len(r.Networks))
 
 	for _, network := range r.Networks {
 		networks = append(networks, convert.BasicNetworkFromGRPC(*network))

+ 1 - 1
daemon/cluster/nodes.go

@@ -34,7 +34,7 @@ func (c *Cluster) GetNodes(options apitypes.NodeListOptions) ([]types.Node, erro
 		return nil, err
 	}
 
-	nodes := []types.Node{}
+	nodes := make([]types.Node, 0, len(r.Nodes))
 
 	for _, node := range r.Nodes {
 		nodes = append(nodes, convert.NodeFromGRPC(*node))

+ 1 - 1
daemon/cluster/secrets.go

@@ -48,7 +48,7 @@ func (c *Cluster) GetSecrets(options apitypes.SecretListOptions) ([]types.Secret
 		return nil, err
 	}
 
-	secrets := []types.Secret{}
+	secrets := make([]types.Secret, 0, len(r.Secrets))
 
 	for _, secret := range r.Secrets {
 		secrets = append(secrets, convert.SecretFromGRPC(secret))

+ 1 - 1
daemon/cluster/services.go

@@ -67,7 +67,7 @@ func (c *Cluster) GetServices(options apitypes.ServiceListOptions) ([]types.Serv
 		return nil, err
 	}
 
-	services := []types.Service{}
+	services := make([]types.Service, 0, len(r.Services))
 
 	for _, service := range r.Services {
 		if options.Filters.Include("mode") {

+ 1 - 1
daemon/cluster/tasks.go

@@ -60,7 +60,7 @@ func (c *Cluster) GetTasks(options apitypes.TaskListOptions) ([]types.Task, erro
 		return nil, err
 	}
 
-	tasks := []types.Task{}
+	tasks := make([]types.Task, 0, len(r.Tasks))
 
 	for _, task := range r.Tasks {
 		if task.Spec.GetContainer() != nil {