aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJimmy Hu <jimmy.hu@dexon.org>2019-03-29 13:00:55 +0800
committerWei-Ning Huang <w@dexon.org>2019-04-09 13:50:05 +0800
commitf20d8dafceb6ba70ff42dc78939a68d251d1b829 (patch)
tree4d7f3523828caf7f7dd8bed50eabb00d424fa5a3
parentf565ee59fabb3888dd7002251f87765ca64fd475 (diff)
downloaddexon-f20d8dafceb6ba70ff42dc78939a68d251d1b829.tar
dexon-f20d8dafceb6ba70ff42dc78939a68d251d1b829.tar.gz
dexon-f20d8dafceb6ba70ff42dc78939a68d251d1b829.tar.bz2
dexon-f20d8dafceb6ba70ff42dc78939a68d251d1b829.tar.lz
dexon-f20d8dafceb6ba70ff42dc78939a68d251d1b829.tar.xz
dexon-f20d8dafceb6ba70ff42dc78939a68d251d1b829.tar.zst
dexon-f20d8dafceb6ba70ff42dc78939a68d251d1b829.zip
dex: fix initial build connection bug (#311)
-rw-r--r--dex/handler.go9
-rw-r--r--dex/peer.go2
2 files changed, 7 insertions, 4 deletions
diff --git a/dex/handler.go b/dex/handler.go
index 6d0746d2f..161f4a4d8 100644
--- a/dex/handler.go
+++ b/dex/handler.go
@@ -1302,10 +1302,11 @@ func (pm *ProtocolManager) SetReceiveCoreMessage(enabled bool) {
// a loop keep building and maintaining peers in notary set.
// TODO: finish this
func (pm *ProtocolManager) peerSetLoop() {
- log.Debug("ProtocolManager: started peer set loop")
-
round := pm.gov.Round()
- log.Trace("ProtocolManager: startup round", "round", round)
+ resetCount := pm.gov.DKGResetCount(round)
+ log.Debug("ProtocolManager: startup round",
+ "round", round,
+ "reset", resetCount)
if round < dexCore.DKGDelayRound {
for i := round; i <= dexCore.DKGDelayRound; i++ {
@@ -1319,8 +1320,8 @@ func (pm *ProtocolManager) peerSetLoop() {
if CRSRound > round {
pm.peers.BuildConnection(CRSRound)
round = CRSRound
+ resetCount = pm.gov.DKGResetCount(round)
}
- resetCount := uint64(0)
for {
select {
diff --git a/dex/peer.go b/dex/peer.go
index 0d23e630f..d3650d00d 100644
--- a/dex/peer.go
+++ b/dex/peer.go
@@ -929,6 +929,8 @@ func (ps *peerSet) ForgetConnection(round uint64) {
ps.lock.Lock()
defer ps.lock.Unlock()
+ log.Debug("Forget connection", "round", round)
+
for label := range ps.directConn {
if label.round <= round {
ps.forgetDirectConn(label)