What is the definition of "gasLimit" in the chain spec files for Parity? The wiki says it is "gas limit of the genesis" ! If I knew what that definition meant, I wouldn't need a definition.
2 Answers
Each ethereum transaction uses "gas" to protect miners from running infinite computations. Transaction senders may send a gas limit which indicates how much gas they are willing to spend on processing a particular transaction (in general it is impossible to know in advance how much gas a transaction will require).
A block also has an overall gas limit, to prevent blocks from getting too big, and processing times from getting too high. The genesis block is no different in this regard - the setting you refer to is the gas limit for the genesis block, i.e. how much gas may be used when mining all transactions in the genesis block.
-
Wait! Are you saying that "gasLimit" in the genesis file ONLY relates to the genesis block? To make this really clear, please tell me 100% that it is NOT the "Block Gas Limit" and it is not the transaction gas limit. Also, please tell me if this is why the "Block Gas Limit" is 21000 but the "gasLimit" is set to 0x1388 (5000) in the genesis file, because the genesis BLOCK has a lower gas limit than all other blocks? Am I understanding this finally? Commented Oct 8, 2017 at 22:18
-
I confess that I haven't tried an implementation of this, but reading the specification seems quite clear to me: "
genesis
contains the genesis block (first block in the chain) header information." Within that,gasLimit
is defined as for any other block. There is also aparams
section, which containsminGasLimit
, defining the absolute minimum that miners can allow a block's gasLimit to be. Where are you reading "Block Gas Limit"?– cjolCommented Oct 9, 2017 at 9:08 -
Does that imply that there should be a "gasLimit" parameter in the genesis section and then again in the params section of the chain spec file? That could make sense but it is not present in the default file: github.com/paritytech/parity/blob/master/ethcore/res/ethereum/… To answer your question: I read "block gas limit" when I get this error: ethereum.stackexchange.com/questions/28002/… Commented Oct 11, 2017 at 5:18
gasLimit parameter in Parity chain spec file refers to the Block Gas Limit. It is a default value that may only apply to the genesis block, as miners can "vote" to raise or lower the Block Gas Limit over time.