Commit 828bdb6f authored by caopingcp's avatar caopingcp

tendermint use PreExecBlock

parent 5b006881
......@@ -3,7 +3,7 @@ module github.com/33cn/plugin
go 1.12
require (
github.com/33cn/chain33 v0.0.0-20191011025601-06dbefe7d2e8
github.com/33cn/chain33 v0.0.0-20191017025459-6d5c61c7d134
github.com/BurntSushi/toml v0.3.1
github.com/NebulousLabs/Sia v1.3.7
github.com/btcsuite/btcd v0.0.0-20181013004428-67e573d211ac
......
cloud.google.com/go v0.26.0/go.mod h1:aQUYkXzVsufM+DwF1aE+0xfcU+56JwCaLick0ClmMTw=
github.com/33cn/chain33 v0.0.0-20190925142515-31e357c36c74 h1:8PC5TDbLIV5haxz3uhiSS2zrgDwkAFQKOSa6KgNTn9c=
github.com/33cn/chain33 v0.0.0-20190925142515-31e357c36c74/go.mod h1:4I8n+Zyf3t0UKM5jjpqJY627Tub62oXkLsdzIv4r6rQ=
github.com/33cn/chain33 v0.0.0-20191011025601-06dbefe7d2e8 h1:YorXd8yAS26S49lY8Mdmn7Z5HhGJ1pat9QfXAEZfkw4=
github.com/33cn/chain33 v0.0.0-20191011025601-06dbefe7d2e8/go.mod h1:4I8n+Zyf3t0UKM5jjpqJY627Tub62oXkLsdzIv4r6rQ=
github.com/33cn/chain33 v0.0.0-20191017025459-6d5c61c7d134 h1:uglc+qoZXRLxsLn9TdwLV5YDzjnRbLV0QjaxqvVFh4M=
github.com/33cn/chain33 v0.0.0-20191017025459-6d5c61c7d134/go.mod h1:4I8n+Zyf3t0UKM5jjpqJY627Tub62oXkLsdzIv4r6rQ=
github.com/AndreasBriese/bbloom v0.0.0-20180913140656-343706a395b7 h1:PqzgE6kAMi81xWQA2QIVxjWkFHptGgC547vchpUbtFo=
github.com/AndreasBriese/bbloom v0.0.0-20180913140656-343706a395b7/go.mod h1:bOvUY6CB00SOBii9/FifXqc0awNKxLFCL/+pkDPuyl8=
github.com/BurntSushi/toml v0.3.1 h1:WXkYYl6Yr3qBf1K79EBnL4mak0OimBfB0XUf9Vl28OQ=
......
......@@ -744,9 +744,9 @@ func (cs *ConsensusState) createProposalBlock() (block *ttypes.TendermintBlock)
baseTx := cs.createBaseTx(block.TendermintBlock)
block.Data.Txs[0] = baseTx
block.Data.TxHash = merkle.CalcMerkleRoot(block.Data.Txs)
pblockNew := cs.client.ExecBlock(block.Data)
pblockNew := cs.client.PreExecBlock(block.Data, false)
if pblockNew == nil {
tendermintlog.Error("createProposalBlock ExecBlock fail")
tendermintlog.Error("createProposalBlock PreExecBlock fail")
return nil
}
block.Data = pblockNew
......@@ -817,16 +817,16 @@ func (cs *ConsensusState) defaultDoPrevote(height int64, round int) {
return
}
// Exec proposal block
// PreExec proposal block
blockCopy := *cs.ProposalBlock.Data
blockNew := cs.client.ExecBlock(&blockCopy)
blockNew := cs.client.PreExecBlock(&blockCopy, true)
if blockNew == nil {
tendermintlog.Error("enterPrevote: Exec ProposalBlock fail")
tendermintlog.Error("enterPrevote: PreExec ProposalBlock fail")
cs.signAddVote(ttypes.VoteTypePrevote, nil)
return
}
if !bytes.Equal(blockNew.Hash(), cs.ProposalBlock.Data.Hash()) {
tendermintlog.Error("enterPrevote: Exec ProposalBlock has change")
tendermintlog.Error("enterPrevote: PreExec ProposalBlock has change")
cs.signAddVote(ttypes.VoteTypePrevote, nil)
return
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment