Essentially the question is how to set/change the "minimal cost of the transaction" a.k.a. "Gtransaction" value using Parity?
On a private blockchain with a custom chain spec file I have a minGasLimit of 0x9c4. I used to think this means that the gas has to be at least 2500 (decimal)
But when I try to make a transaction by setting 4000 gas, I get this error:
Transaction gas is too low. There is not enough gas to cover minimal cost of the transaction (minimal: 21000, got: 4000). Try increasing supplied gas.
I searched the chain spec file(s) for "5208" because that is the hex representation of 21000. But it's not in the file.
As @benjaminion points out, this 21000 is the Gtransaction value in Appendix G of the Yellowpaper (http://yellowpaper.io/).
So I have two specific questions:
Does Parity allow the ability to change the 21000 Gtransaction default? If so, what value must I edit?
What actually does minGasLimit refer to in the Parity chain spec, since it is obviously not the "Gtransaction" a.k.a. "minimal cost of transaction"? A Yellowpaper reference would be ideal.
EDIT: I just found this about the geth genesis file, and it seems to say that gasLimit is the correct term for configuring Gtransaction in the gensis file. But like I say in the beginning, I have edited this value on my Parity chain spec but the 21000 number keeps coming up. Here is the geth reference:
https://github.com/ethereum/go-ethereum/wiki/Private-network
minGasLimitis something else - probably the minimum block gas limit that miners can vote it down to, on my reading of the Chain Spec. A transaction will always use at least 21000 gas since that is the value specified in the protocol: it is the quantity G_transaction in the Yellow Paper, appendix G. – benjaminion Oct 07 '17 at 18:29