diff options
author | Jimmy Hu <jimmy.hu@dexon.org> | 2019-03-18 11:04:48 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-03-18 11:04:48 +0800 |
commit | 98d71cb5ec7e3d343488607db8047b4cd80be9cf (patch) | |
tree | e9537367b16de183f46dfc0f5c94aaa6eda4d776 | |
parent | 4b40c1b8990d2a371a77018feea32d038163f2ec (diff) | |
download | dexon-consensus-98d71cb5ec7e3d343488607db8047b4cd80be9cf.tar dexon-consensus-98d71cb5ec7e3d343488607db8047b4cd80be9cf.tar.gz dexon-consensus-98d71cb5ec7e3d343488607db8047b4cd80be9cf.tar.bz2 dexon-consensus-98d71cb5ec7e3d343488607db8047b4cd80be9cf.tar.lz dexon-consensus-98d71cb5ec7e3d343488607db8047b4cd80be9cf.tar.xz dexon-consensus-98d71cb5ec7e3d343488607db8047b4cd80be9cf.tar.zst dexon-consensus-98d71cb5ec7e3d343488607db8047b4cd80be9cf.zip |
core: fix 'failed to pre process block' message if unknown block is confirmed (#495)
-rw-r--r-- | core/agreement.go | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/core/agreement.go b/core/agreement.go index 43fddd0..b0c7734 100644 --- a/core/agreement.go +++ b/core/agreement.go @@ -533,6 +533,10 @@ func (a *agreement) done() <-chan struct{} { func (a *agreement) confirmed() bool { a.lock.RLock() defer a.lock.RUnlock() + return a.confirmedNoLock() +} + +func (a *agreement) confirmedNoLock() bool { return a.hasOutput } @@ -556,6 +560,8 @@ func (a *agreement) processBlock(block *types.Block) error { receivedTime: time.Now().UTC(), }) return nil + } else if a.confirmedNoLock() { + return nil } if b, exist := a.data.blocks[block.ProposerID]; exist { if b.Hash != block.Hash { |