diff options
author | Wei-Ning Huang <w@dexon.org> | 2018-10-20 17:26:32 +0800 |
---|---|---|
committer | Wei-Ning Huang <w@dexon.org> | 2018-12-19 20:54:27 +0800 |
commit | 429d5cb30e0883b5f2e68fb7a3b38c80836df5f5 (patch) | |
tree | 23ce8392e9fd81987d2bf4eda50a1e1a100f8002 /dex | |
parent | 9f56debcde5617d7bf13288b9bebca763e4fe234 (diff) | |
download | dexon-429d5cb30e0883b5f2e68fb7a3b38c80836df5f5.tar dexon-429d5cb30e0883b5f2e68fb7a3b38c80836df5f5.tar.gz dexon-429d5cb30e0883b5f2e68fb7a3b38c80836df5f5.tar.bz2 dexon-429d5cb30e0883b5f2e68fb7a3b38c80836df5f5.tar.lz dexon-429d5cb30e0883b5f2e68fb7a3b38c80836df5f5.tar.xz dexon-429d5cb30e0883b5f2e68fb7a3b38c80836df5f5.tar.zst dexon-429d5cb30e0883b5f2e68fb7a3b38c80836df5f5.zip |
core: included Dexcon metadata in block
Diffstat (limited to 'dex')
-rw-r--r-- | dex/app.go | 16 |
1 files changed, 11 insertions, 5 deletions
diff --git a/dex/app.go b/dex/app.go index 40366c25f..ecd29546e 100644 --- a/dex/app.go +++ b/dex/app.go @@ -347,22 +347,27 @@ func (d *DexconApp) BlockDelivered(blockHash coreCommon.Hash, result coreTypes.F block := d.blockchain.GetConfirmedBlockByHash(blockHash) if block == nil { - log.Error("Can not get confirmed block") - return + panic("Can not get confirmed block") } var transactions types.Transactions err := rlp.Decode(bytes.NewReader(block.Payload), &transactions) if err != nil { log.Error("Payload rlp decode failed", "error", err) - return + panic(err) } var witnessData witnessData err = rlp.Decode(bytes.NewReader(block.Witness.Data), &witnessData) if err != nil { log.Error("Witness rlp decode failed", "error", err) - return + panic(err) + } + + block.Payload = nil + dexconMeta, err := rlp.EncodeToBytes(block) + if err != nil { + panic(err) } log.Debug("Block proposer id", "hash", block.ProposerID) @@ -378,13 +383,14 @@ func (d *DexconApp) BlockDelivered(blockHash coreCommon.Hash, result coreTypes.F ChainBlockHeight: block.Position.Height, // TODO(bojie): fix it GasLimit: 8000000, + DexconMeta: dexconMeta, Difficulty: big.NewInt(1), }, transactions, nil, nil) _, err = d.blockchain.InsertPendingBlocks([]*types.Block{newBlock}) if err != nil { log.Error("Insert chain", "error", err) - return + panic(err) } log.Debug("Insert pending block success", "height", result.Height) |