Skip to content
Snippets Groups Projects
Commit 110d6003 authored by Luca Moser's avatar Luca Moser
Browse files

make the portcheck less flimsy

parent e9e1b662
No related branches found
No related tags found
No related merge requests found
package portcheck
import (
"math/rand"
"net"
"sync"
......@@ -65,14 +66,16 @@ func checkAutopeeringConnection() {
disc.Start(srv)
defer disc.Close()
for _, master := range autopeering.Discovery().GetMasterPeers() {
err = disc.Ping(master)
if err == nil {
log.Infof("Pong received from %s", master.IP())
const retryCount = 10
entryNodes := autopeering.Discovery().GetMasterPeers()
for i := 0; i < retryCount; i++ {
randEntryNode := entryNodes[rand.Intn(len(entryNodes))]
if err = disc.Ping(randEntryNode); err == nil {
log.Infof("Pong received from %s", randEntryNode.IP())
break
}
log.Warnf("Error pinging entry node %s: %s", master.IP(), err)
log.Warnf("Error pinging entry node %s (attempts left %d/%d): %s", randEntryNode.IP(), retryCount-i+1, retryCount, err)
}
if err != nil {
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment