aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--p2p/discover/table.go11
1 files changed, 4 insertions, 7 deletions
diff --git a/p2p/discover/table.go b/p2p/discover/table.go
index 7bff0d1d0..4b7ddb775 100644
--- a/p2p/discover/table.go
+++ b/p2p/discover/table.go
@@ -278,14 +278,11 @@ func (tab *Table) refresh() {
for _, seed := range seeds {
glog.V(logger.Debug).Infoln("Seeding network with", seed)
}
- peers := append(tab.nursery, seeds...)
-
- // Bootstrap the table with a self lookup
- if len(peers) > 0 {
- tab.mutex.Lock()
- tab.add(peers)
- tab.mutex.Unlock()
+ nodes := append(tab.nursery, seeds...)
+ // Bond with all the seed nodes (will pingpong only if failed recently)
+ bonded := tab.bondall(nodes)
+ if len(bonded) > 0 {
tab.Lookup(tab.self.ID)
}
// TODO: the Kademlia paper says that we're supposed to perform