Browse code

Refactoring in daemon/discovery.go

Replace time.Sleep with time.Tick and remove unnecessary var block.
Use Warn log-level instead of error.

Signed-off-by: Alexander Morozov <lk4d4@docker.com>

Alexander Morozov authored on 2015/11/10 07:03:29
Showing 1 changed files
... ...
@@ -21,11 +21,8 @@ const (
21 21
 // initDiscovery initialized the nodes discovery subsystem by connecting to the specified backend
22 22
 // and start a registration loop to advertise the current node under the specified address.
23 23
 func initDiscovery(backend, address string, clusterOpts map[string]string) (discovery.Backend, error) {
24
-	var (
25
-		discoveryBackend discovery.Backend
26
-		err              error
27
-	)
28
-	if discoveryBackend, err = discovery.New(backend, defaultDiscoveryHeartbeat, defaultDiscoveryTTL, clusterOpts); err != nil {
24
+	discoveryBackend, err := discovery.New(backend, defaultDiscoveryHeartbeat, defaultDiscoveryTTL, clusterOpts)
25
+	if err != nil {
29 26
 		return nil, err
30 27
 	}
31 28
 
... ...
@@ -35,14 +32,18 @@ func initDiscovery(backend, address string, clusterOpts map[string]string) (disc
35 35
 	return discoveryBackend, nil
36 36
 }
37 37
 
38
+func registerAddr(backend discovery.Backend, addr string) {
39
+	if err := backend.Register(addr); err != nil {
40
+		log.Warnf("Registering as %q in discovery failed: %v", addr, err)
41
+	}
42
+}
43
+
38 44
 // registrationLoop registers the current node against the discovery backend using the specified
39 45
 // address. The function never returns, as registration against the backend comes with a TTL and
40 46
 // requires regular heartbeats.
41 47
 func registrationLoop(discoveryBackend discovery.Backend, address string) {
42
-	for {
43
-		if err := discoveryBackend.Register(address); err != nil {
44
-			log.Errorf("Registering as %q in discovery failed: %v", address, err)
45
-		}
46
-		time.Sleep(defaultDiscoveryHeartbeat)
48
+	registerAddr(discoveryBackend, address)
49
+	for range time.Tick(defaultDiscoveryHeartbeat) {
50
+		registerAddr(discoveryBackend, address)
47 51
 	}
48 52
 }