Merge pull request #4668 from filecoin-project/fix/mpool-pricing

Fix messagepool accounting
This commit is contained in:
Łukasz Magiera 2020-10-30 20:14:33 +01:00 committed by GitHub
commit 696a6867dd
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -752,11 +752,10 @@ func (mp *MessagePool) createMessageChains(actor address.Address, mset map[uint6
balance = new(big.Int).Sub(balance, required)
value := m.Message.Value.Int
if balance.Cmp(value) >= 0 {
// Note: we only account for the value if the balance doesn't drop below 0
// otherwise the message will fail and the miner can reap the gas rewards
balance = new(big.Int).Sub(balance, value)
if balance.Cmp(value) < 0 {
break
}
balance = new(big.Int).Sub(balance, value)
gasReward := mp.getGasReward(m, baseFee)
rewards = append(rewards, gasReward)