X-Git-Url: http://git.osdn.net/view?p=bytom%2Fvapor.git;a=blobdiff_plain;f=protocol%2Fblock.go;h=9552a01509dd34e291754dbb0d110f9c00a6ab84;hp=4870de321a5825f9b0784f0209a99441d205b9c9;hb=23a183040a74bb684d3a036ef26b1d90c4af76b6;hpb=74cf033ce4ad67ac46b3cc6375582a13a5f38a0d diff --git a/protocol/block.go b/protocol/block.go index 4870de32..9552a015 100644 --- a/protocol/block.go +++ b/protocol/block.go @@ -238,7 +238,7 @@ func (c *Chain) reorganizeChain(blockHeader *types.BlockHeader) error { // the number of restored Tx should be very small or most of time ZERO // Error returned from validation is ignored, tx could still be lost if validation fails. // TODO: adjust tx timestamp so that it won't starve in pool. - if _, err := c.ValidateTx(tx); err != nil { + if _, err := c.validateTx(tx); err != nil { log.WithFields(log.Fields{"module": logModule, "tx_id": tx.Tx.ID.String(), "error": err}).Info("restore tx fail") } } @@ -357,6 +357,8 @@ func (c *Chain) processBlock(block *types.Block) (bool, error) { return c.orphanManage.BlockExist(&blockHash), nil } + c.markTransactions(block.Transactions...) + if _, err := c.store.GetBlockHeader(&block.PreviousBlockHash); err != nil { c.orphanManage.Add(block) return true, nil