miner: fix state locking while writing to chain (issue #16933) (#17173)

This commit is contained in:
ledgerwatch 2018-07-31 08:22:33 +01:00 committed by Péter Szilágyi
parent d6efa69187
commit 2fbc454355

View File

@ -316,7 +316,9 @@ func (self *worker) wait() {
for _, log := range work.state.Logs() { for _, log := range work.state.Logs() {
log.BlockHash = block.Hash() log.BlockHash = block.Hash()
} }
self.currentMu.Lock()
stat, err := self.chain.WriteBlockWithState(block, work.receipts, work.state) stat, err := self.chain.WriteBlockWithState(block, work.receipts, work.state)
self.currentMu.Unlock()
if err != nil { if err != nil {
log.Error("Failed writing block to chain", "err", err) log.Error("Failed writing block to chain", "err", err)
continue continue