The quorum for the second voting phase has been reached, with a supermajority of Yay
s!
This means that the voting procedure can proceed to its third stage:
the test chain for Athens is going to be launched soon, approximately Friday April 12th.
To accompany that, we just released a new version of the Tezos node and its baking daemons.
This release includes many improvements, most notably a new --enable-testchain
option.
Users who want to participate in the test chain should
upgrade to this release and run a node with that option.
As this is the first time this procedure is run in Mainnet,
we recommend that node administrators enable this option on a secondary deployment only.
Using the test chain
The main interest of running a testchain that forks from a mainchain, as opposed to running a separate test network such as Alphanet or Zeronet, is twofold.
First, we can see the effect of the context migration on a real context which is much more complex than any test network context.
Second, we can actually perform operations using real accounts, which allows testing remote signers, hardware wallets etc.
For this, the tezos-client
can now take a global parameter --chain
test
. All operations made with this parameter will only be valid in
the test chain. At the protocol level, each operation is signed with a
unique identifier for each network so it is not possible to replay
operations from the test chain on the main chain.
Similarly, developers can use the /chains/test
API prefix, in lieu
of the usual /chains/main
.
Both the option and the API prefix are only valid when the test chain is active.
Running a lighter test chain infrastructure from a snapshot
We recently released a version of the Tezos node with snapshots and
history modes, available for beta
testing in the mainnet-snapshots
Git branch/docker tag.
To help deploy a secondary infrastructure, this node release includes
a new command snapshot export
. This way, node administrators
can extract a snapshot from an existing deployment, in order to spawn
a secondary one for running the test chain with a much lower footprint.
It is also a good opportunity to get familiar with snapshots, and help
us beta-test that feature.
Observing Athens running in the test chain
The are several changes proposed in the variant of protocol
athens_004
that is going to be tested, or more precisely
Pt24m4xiPbLDhVgVfABUjirbmda3yohdN82Sp9FeuAXJ4eV9otd
.
The main changes concern 3 constants, namely the size of a roll, the
gas limit per block and per operation.
These changes can be found in the context once the test chain is
started using the rpc
tezos-client rpc get /chains/test/blocks/head/context/constants
and checking that the value of tokens_per_roll
is indeed
8000000000
μꜩ (or 8000ꜩ), hard_gas_limit_per_operation
and hard_gas_limit_per_block
are 8000000
.
During the context migration there will also be a first example of invoicing, a way for developers to fund their work on new protocols. For the first vote Nomadic is asking for 100ꜩ, enough for a round of drinks for the devs. This can easily be checked using tezos-client.
tezos-client --chain test get balance tz1iSQEcaGpUn6EW5uAy3XhPiNg7BHMnRSXi
Baking on the test chain
Bakers who want to bake on the test chain will also have to start the
daemons for proto-004 with the option --chain test
on this node.
Several precautions are in place to avoid double baking, they have been all updated to support the test chain, including the Ledger apps from Obsidian Systems. Yet, as always, bakers should be extra careful with double baking. The documentation includes specific instructions and setup recommendations.