}
f.queued[hash] = op
f.queue.Push(op, -float32(block.Height))
- log.Info("Queued propagated block.", " peer: ", peer, "number: ", block.Height, "queued: ", f.queue.Size())
+ log.Info("Queued receive mine block.", " peer:", peer, " number:", block.Height, " queued:", f.queue.Size())
}
}
// synchronise tries to sync up our local block chain with a remote peer.
func (sm *SyncManager) synchronise() {
+ log.Info("bk peer num:", sm.blockKeeper.peers.Len(), " sw peer num:", sm.sw.Peers().Size(), " ", sm.sw.Peers().List())
// Make sure only one goroutine is ever allowed past this point at once
if !atomic.CompareAndSwapInt32(&sm.synchronising, 0, 1) {
log.Info("Synchronising ...")
return
}
if bestHeight > sm.chain.BestBlockHeight() {
+ log.Info("sync peer:", peer.Addr(), " height:", bestHeight)
sm.blockKeeper.BlockRequestWorker(peer.Key, bestHeight)
}
}
log.WithFields(log.Fields{
"addr": addr,
"src": src,
- }).Info("Add address to book")
+ }).Debug("Add address to book")
a.addAddress(addr, src)
}
bucket := a.calcNewBucket(addr, src)
a.addToNewBucket(ka, bucket)
- log.Info("Added new address", "address", addr, "total", a.size())
+ log.Info("Added new address ", "address:", addr, " total:", a.size())
}
// Make space in the new buckets by expiring the really bad entries.
"conn": c,
"error": err,
}).Error("Connection failed @ recvRoutine (reading byte)")
+ c.conn.Close()
c.stopForError(err)
}
break FOR_LOOP
import (
"encoding/json"
- "errors"
"fmt"
"math/rand"
"net"
dbm "github.com/tendermint/tmlibs/db"
cfg "github.com/bytom/config"
+ "github.com/bytom/errors"
"github.com/bytom/p2p/trust"
)
}
log.WithFields(log.Fields{
"address": addr,
- "error": err,
}).Info("Dialed and added peer")
return peer, nil
}
}).Info("Error reconnecting to peer. Giving up")
return
}
+ if errors.Root(err) == ErrSwitchDuplicatePeer {
+ log.WithField("error", err).Info("Error reconnecting to peer. ")
+ return
+ }
log.WithFields(log.Fields{
"retries": i,
"error": err,