mirror of https://github.com/hyperledger/besu
Allow missing accounts to create zero-cost transactions (#685)
Messages which originate with the current node are logged in the gossiper such that if a remote peer sends a packet which originated from the local back to the local node, it should not go back out again. It was found that if a non-existent account sent a transaction via JSON RPC - the transction would be rejected, even if the upfront cost of the transaction was 0 (0 gasprice, and 0 value). This was because the sender was deemed to not exist, therefore not have the required funds. If the tranasaction was received via block propogation, this problem would not be hit (as the sender account would be created in the world state prior to validating the transaction). Local/remote transactions did not have access to the world state to do this. MainnetTransactionValidator has been updated to allow a 'null' sender to create a transaction if the price is zero (and the nonce is acceptable from the standpoint of a default/initial account state). Signed-off-by: Adrian Sutton <adrian.sutton@consensys.net>pull/2/head
parent
b28258b8c4
commit
5e8ecff6bc
Loading…
Reference in new issue