IsCaughtUp works with new networks

This commit is contained in:
Jae Kwon 2015-09-11 19:00:27 -07:00
parent 891ad9c1f0
commit b468baf7ac
1 changed files with 3 additions and 1 deletions

View File

@ -32,6 +32,7 @@ const (
type BlockPool struct {
QuitService
startTime time.Time
// block requests
mtx sync.Mutex
@ -65,6 +66,7 @@ func NewBlockPool(start int, requestsCh chan<- BlockRequest, timeoutsCh chan<- s
func (pool *BlockPool) OnStart() error {
pool.QuitService.OnStart()
go pool.makeRequestsRoutine()
pool.startTime = time.Now()
return nil
}
@ -136,7 +138,7 @@ func (pool *BlockPool) IsCaughtUp() bool {
}
pool.peersMtx.Unlock()
return numPeers >= 3 && height > 0 && height == maxPeerHeight
return numPeers >= 3 && (height > 0 || time.Now().Sub(pool.startTime) > 30*time.Second) && (maxPeerHeight == 0 || height == maxPeerHeight)
}
// We need to see the second block's Validation to validate the first block.