aboutsummaryrefslogtreecommitdiffstats
path: root/dex/app.go
diff options
context:
space:
mode:
authorSonic <sonic@dexon.org>2018-12-21 14:53:37 +0800
committerWei-Ning Huang <w@byzantine-lab.io>2019-06-12 17:27:20 +0800
commite7d6753c4b2ce239becf025d1e14a7c7fe86d8e5 (patch)
tree2b794474971e637eea79c061ae0e686c390d90d4 /dex/app.go
parent1dae18a03ae58e4b98a81a1596fedb9cb2b893e6 (diff)
downloadgo-tangerine-e7d6753c4b2ce239becf025d1e14a7c7fe86d8e5.tar
go-tangerine-e7d6753c4b2ce239becf025d1e14a7c7fe86d8e5.tar.gz
go-tangerine-e7d6753c4b2ce239becf025d1e14a7c7fe86d8e5.tar.bz2
go-tangerine-e7d6753c4b2ce239becf025d1e14a7c7fe86d8e5.tar.lz
go-tangerine-e7d6753c4b2ce239becf025d1e14a7c7fe86d8e5.tar.xz
go-tangerine-e7d6753c4b2ce239becf025d1e14a7c7fe86d8e5.tar.zst
go-tangerine-e7d6753c4b2ce239becf025d1e14a7c7fe86d8e5.zip
core, dex, internal: block proposer syncing (first iteration) (#96)
* dex, internal: block proposer syncing (first iteration) * core: find block from db if not in memory This fix handles stopping proposing and then restarting * core: no need to reorg when reset Dexon will not fork. This commit also fix when a block confirm but its parent is not in db yet, during restarting proposing. * dex: always accept NewBlockMsg, NewBlockHashesMsg We need to accept NewBlockMsg, NewBlockHashesMsg to sync current block with other peers in block proposer mode when syncing lattice data. It's a waste when the node is synced and start proposing. Todo: control msg processing on/off more granular, accept NewBlockMsg, NewBlockHashesMsg when syncing, but stop when synced.
Diffstat (limited to 'dex/app.go')
-rw-r--r--dex/app.go5
1 files changed, 5 insertions, 0 deletions
diff --git a/dex/app.go b/dex/app.go
index 9dcfd87e9..d04b2afd6 100644
--- a/dex/app.go
+++ b/dex/app.go
@@ -451,6 +451,9 @@ func (d *DexconApp) BlockDelivered(
blockPosition coreTypes.Position,
result coreTypes.FinalizationResult) {
+ log.Debug("DexconApp block deliver", "height", result.Height, "hash", blockHash, "position", blockPosition.String())
+ defer log.Debug("DexconApp block delivered", "height", result.Height, "hash", blockHash, "position", blockPosition.String())
+
chainID := blockPosition.ChainID
d.chainLock(chainID)
defer d.chainUnlock(chainID)
@@ -461,6 +464,7 @@ func (d *DexconApp) BlockDelivered(
}
block.Payload = nil
+ block.Finalization = result
dexconMeta, err := rlp.EncodeToBytes(block)
if err != nil {
panic(err)
@@ -501,6 +505,7 @@ func (d *DexconApp) BlockConfirmed(block coreTypes.Block) {
d.chainLock(block.Position.ChainID)
defer d.chainUnlock(block.Position.ChainID)
+ log.Debug("DexconApp block confirmed", "block", block.String())
if err := d.blockchain.AddConfirmedBlock(&block); err != nil {
panic(err)
}