MCPcopy
hub / github.com/google/cadvisor / retryDockerStatus

Function retryDockerStatus

container/docker/plugin.go:57–81  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

55}
56
57func retryDockerStatus() info.DockerStatus {
58 startupTimeout := dockerClientTimeout
59 maxTimeout := 4 * startupTimeout
60 for {
61 ctx, cancel := context.WithTimeout(context.Background(), startupTimeout)
62 defer cancel()
63 dockerStatus, err := StatusWithContext(ctx)
64 if err == nil {
65 return dockerStatus
66 }
67
68 switch err {
69 case context.DeadlineExceeded:
70 klog.Warningf("Timeout trying to communicate with docker during initialization, will retry")
71 default:
72 klog.V(5).Infof("Docker not connected: %v", err)
73 return info.DockerStatus{}
74 }
75
76 startupTimeout = 2 * startupTimeout
77 if startupTimeout > maxTimeout {
78 startupTimeout = maxTimeout
79 }
80 }
81}

Callers 1

InitializeFSContextMethod · 0.85

Calls 3

StatusWithContextFunction · 0.85
WarningfMethod · 0.80
InfofMethod · 0.80

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…