|
@ -95,7 +95,7 @@ The `Data` field must be strictly deterministic, but can be arbitrary data. |
|
|
|
|
|
|
|
|
### Gas |
|
|
### Gas |
|
|
|
|
|
|
|
|
Ethereum introduced the notion of `gas` as an absract representation of the |
|
|
|
|
|
|
|
|
Ethereum introduced the notion of `gas` as an abstract representation of the |
|
|
cost of resources used by nodes when processing transactions. Every operation in the |
|
|
cost of resources used by nodes when processing transactions. Every operation in the |
|
|
Ethereum Virtual Machine uses some amount of gas, and gas can be accepted at a market-variable price. |
|
|
Ethereum Virtual Machine uses some amount of gas, and gas can be accepted at a market-variable price. |
|
|
Users propose a maximum amount of gas for their transaction; if the tx uses less, they get |
|
|
Users propose a maximum amount of gas for their transaction; if the tx uses less, they get |
|
@ -123,7 +123,7 @@ Note that Tendermint does not currently enforce anything about Gas in the consen |
|
|
This means it does not guarantee that committed blocks satisfy these rules! |
|
|
This means it does not guarantee that committed blocks satisfy these rules! |
|
|
It is the application's responsibility to return non-zero response codes when gas limits are exceeded. |
|
|
It is the application's responsibility to return non-zero response codes when gas limits are exceeded. |
|
|
|
|
|
|
|
|
The `GasUsed` field is ignored compltely by Tendermint. That said, applications should enforce: |
|
|
|
|
|
|
|
|
The `GasUsed` field is ignored completely by Tendermint. That said, applications should enforce: |
|
|
|
|
|
|
|
|
- `GasUsed <= GasWanted` for any given transaction |
|
|
- `GasUsed <= GasWanted` for any given transaction |
|
|
- `(sum of GasUsed in a block) <= MaxGas` for every block |
|
|
- `(sum of GasUsed in a block) <= MaxGas` for every block |
|
|