editing language, units

This commit is contained in:
Arthur B 2018-11-25 06:41:55 -08:00
parent becc0124a3
commit 4cf0aadca6
No known key found for this signature in database
GPG Key ID: 461CAA7C5D5522FE

View File

@ -101,10 +101,11 @@ More details on fees and cost model
Protocol: Protocol:
~~~~~~~~~ ~~~~~~~~~
The creation of a tz{1,2,3} address now requires a burn of `ꜩ0.257`. The creation of a new tz{1,2,3} address now requires a burn of `ꜩ0.257`,
in-line with the creation of KT account.
Every manager operation now costs ``10000`` in gas, a transaction that Every manager operation now costs at least ``10000`` in gas,
creates a contract has a default cost of ``10100`` in gas. a transaction that creates an address has a default cost of ``10100`` in gas.
Example: Example:
:: ::
@ -125,12 +126,16 @@ Example:
Baker Baker
~~~~~ ~~~~~
With newly introduced default settings, the bakers daemon will now The baker and mempool filters now require a minimal fee to propagate
require a minimal amount of fees per operation to accept manager and include operations into blocks. This default is not set at the
operations such as transactions, revelations or originations. protocol level but rather in the configuration of the node and the baker.
The expected amount depends on the operation sent. When considering Bakers can thus decide of the settings that work best for them
the injection of an operation in a block, the baker will check its
size and gas and reject it if the associated fees are too low. The minimal fee depends on the operation sent (transaction, origination,
revelation, etc)
When considering the injection of an operation in a block, the
baker will check its size and gas and reject it if the associated fees are too low.
The expected fees are computed using this formula: The expected fees are computed using this formula:
:: ::
fees >= (minimal_fees + minimal_nanotez_per_byte * size + minimal_nanotez_per_gas_unit * gas) fees >= (minimal_fees + minimal_nanotez_per_byte * size + minimal_nanotez_per_gas_unit * gas)
@ -144,46 +149,43 @@ operations, still including header and signature.
By default: By default:
:: ::
minimal_fees = 0.000 1 minimal_fees = 0.0001 ꜩ (100 µꜩ)
minimal_nanotez_per_gas_unit = ꜩ0.000 000 1 minimal_nanotez_per_gas_unit = 100 nꜩ/gu (0.0000001 ꜩ/gu)
minimal_nanotez_per_byte = ꜩ0.000 001 minimal_nanotez_per_byte = 1000 n/B (0.000001 ꜩ/B)
For instance, a single transaction to an existing tz1 will require For instance, a single transaction to an existing implict address
`ꜩ0.001 273` to be included. will require a transaction fee of at least `0.001273 ꜩ`
to be included by bakers who choose to follow the default settings.
These settings may be changed by giving the options when starting a These settings may be changed by passing the following flags to the baker
baker (``--minimal-fees <amount in tez>``, (``--minimal-fees <amount in tez>``,
``--minimal-nanotez-per-gas-unit <amount in nanotez>``, ``--minimal-nanotez-per-gas-unit <amount in nanotez>``,
``--minimal-nanotez-per-byte <amount in nanotez>``). ``--minimal-nanotez-per-byte <amount in nanotez>``).
Note that most bakers, such as the tezos foundation's ones, may use
the default options and sending operations that does not respect the
default limits are not expected to be included in blocks.
These changes are especially important to delegates for rewards Delegates distributing rewards should be aware of these thresholds
distribution. The safest way to send rewards is now to include the for their transactions to be succesfully included.
corresponding fees.
Node Node
~~~~ ~~~~
The node now filters operations following the same principles as The node also filters operations following the same principles as
above. If an operation doesn't have enough fees to cover the above above. If an operation does not carry sufficient fees, a node
formula with the default values it is rejected and not included in the following the default setting will not include it in its mempool.
mempool. Hence an operation without fee won't even propagate through mempool. Hence an operation without fee won't even propagate through
the network. The constant might be changed with the following RPC the network. The constant can be changed with the following RPC
call: call:
:: ::
./tezos-client rpc post /chains/main/mempool/filter with '{ "minimal_fees": "0", "minimal_nanotez_per_gas_unit": "0", "minimal_nanotez_per_byte": "0" }' ./tezos-client rpc post /chains/main/mempool/filter with '{ "minimal_fees": "0", "minimal_nanotez_per_gas_unit": "0", "minimal_nanotez_per_byte": "0" }'
The constants used by the node and the baker are not necessarily equal. The constants used by the node and the baker do not need to be equal,
Still, the node needs to be less restrictive than the baker, otherwise but the node needs to be less restrictive than the baker, otherwise
the baker won't even see the operations. the baker won't even see the operations.
An injection node (i.e. a specific node targeted by wallet for An injection node (i.e. a specific node targeted by wallet for
injection operation) might deactivate the filter (by using the injection operation) might deactivate the filter (by using the
previous RPC call), in order to accept any operation and give them a previous RPC call) in order to accept any operation and give them a
chance to be propagated to a baker that is willing to accept fee-less chance to be propagated to a baker that is willing to accept fee-less
operations. operations.