2

A smarter man than I (@edmund-edgar) recently told me:

Th[e Block Gas Limit of 5000 as noted by the gaslimit=0x1388 parameter] represents the current Ethereum main chain, and the initial gas limit for that chain was indeed 5000, which was too low to send any transactions. This was part of a deliberate process called "thawing", where the gas limit started out very low, and was gradually increased over time as people became more confident that the network was functioning correctly.

My question: by what mechanism did this "thawing" take place?

1 Answer 1

3

The block gas limit, the maximum amount of gas a miner is allowed to process in a block, is variable. In each block, the miner can raise it slightly from the previous level, or lower it slightly from the previous level. The effect is something like voting, where if a large proportion of the hashpower tend to increase then it will go up over time, and if they tend to decrease then it will go down over time.

The initial level in the initial genesis.json file was very low (5000) but miners, guided by a change in software defaults, then increasingly voted to raise the limit, so it gradually went up.

8
  • 1
    Thank you but there has to be something missing from this answer. You say a(n individual) miner can raise the block gas limit slightly. That implies that it is subjective and that the value "lives" with the miner. But you also say that "guided by a change in software defaults, the[ miners, plural] increasingly voted to raise the limit" which implies that it is an objective value that is part of the chain. Can you reconcile these? Also, what was the actual mechanism by which this happened? That's my question.
    – stone.212
    Commented Oct 17, 2017 at 23:58
  • 1
    Blocks are created by miners, but they are then shared, they don't "live" with the miner. You always build on top of a previous block. That previous block includes a gas limit number, which is specified in the block header. When you build your block on top of that block, you set the gas limit for the block you are building, and put that in your block's header. This limit can only be slightly higher or lower than the gas limit specified in the header of the previous block, otherwise your block is invalid and the rest of the miners will reject it. Commented Oct 18, 2017 at 0:40
  • 1
    I know that is accurate but it doesn't relate to my question, or to the question(s) I asked (again) in my comment.
    – stone.212
    Commented Oct 18, 2017 at 1:03
  • In that case I don't understand your question. Commented Oct 18, 2017 at 1:41
  • 1
    In my comment, I point to the absolute, exact problem that your original answer leaves open and I asked you to reconcile it. and I restated my original question (which is: "by what mechanism is the block gas limit changed?") You said "the miner can raise... or lower it" but you did not specify the mechanism. And you did not reconcile the idea that the miner can do it with the idea that there is some "actual" or objective block gas limit that you called "it" when you said "it gradually went up." I don't think I can be more specific.
    – stone.212
    Commented Oct 18, 2017 at 3:47

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.