From 41da428d065ab15fd2d8aba1fbd0d0056136a43b Mon Sep 17 00:00:00 2001 From: Drew Erny Date: Mon, 10 Jun 2019 11:06:11 -0500 Subject: [PATCH] Fix more grpc list message sizes There are a few more places, apparently, that List operations against Swarm exist, besides just in the List methods. This increases the max received message size in those places. Signed-off-by: Drew Erny (cherry picked from commit a84a78e9767d82abd4744dad9ce4fb3f64141a8f) Signed-off-by: Sebastiaan van Stijn --- daemon/cluster/cluster.go | 6 +++++- daemon/cluster/swarm.go | 6 +++++- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/daemon/cluster/cluster.go b/daemon/cluster/cluster.go index 828748bc5c..8589530174 100644 --- a/daemon/cluster/cluster.go +++ b/daemon/cluster/cluster.go @@ -58,6 +58,7 @@ import ( swarmnode "github.com/docker/swarmkit/node" "github.com/pkg/errors" "github.com/sirupsen/logrus" + "google.golang.org/grpc" ) const swarmDirName = "swarm" @@ -399,7 +400,10 @@ func (c *Cluster) Cleanup() { func managerStats(client swarmapi.ControlClient, currentNodeID string) (current bool, reachable int, unreachable int, err error) { ctx, cancel := context.WithTimeout(context.Background(), 5*time.Second) defer cancel() - nodes, err := client.ListNodes(ctx, &swarmapi.ListNodesRequest{}) + nodes, err := client.ListNodes( + ctx, &swarmapi.ListNodesRequest{}, + grpc.MaxCallRecvMsgSize(defaultRecvSizeForListResponse), + ) if err != nil { return false, 0, 0, err } diff --git a/daemon/cluster/swarm.go b/daemon/cluster/swarm.go index 65dfe9eb45..6ceadf8122 100644 --- a/daemon/cluster/swarm.go +++ b/daemon/cluster/swarm.go @@ -19,6 +19,7 @@ import ( swarmnode "github.com/docker/swarmkit/node" "github.com/pkg/errors" "github.com/sirupsen/logrus" + "google.golang.org/grpc" ) // Init initializes new cluster from user provided request. @@ -442,7 +443,10 @@ func (c *Cluster) Info() types.Info { info.Cluster = &swarm.ClusterInfo - if r, err := state.controlClient.ListNodes(ctx, &swarmapi.ListNodesRequest{}); err != nil { + if r, err := state.controlClient.ListNodes( + ctx, &swarmapi.ListNodesRequest{}, + grpc.MaxCallRecvMsgSize(defaultRecvSizeForListResponse), + ); err != nil { info.Error = err.Error() } else { info.Nodes = len(r.Nodes)