From 0 to 1000 Nodes on a Testnet: Case Study on Avalanche Denali
What is a testnet?
A Testnet is a network for running tests. Its utility is to perform tests and run experimental features before the project goes into production. The testnet is a sandboxed environment for improvements and optimizations, before deploying them on the mainnet.
What is Avalanche?
Avalanche is an open-source platform for launching highly decentralized applications, new financial primitives, and new interoperable blockchains. It is a dedicated platform for the development of tokens and decentralized applications.
Dedicated mainly to decentralized finance, Avalanche wants to use the full potential of Avalanche protocols to build a reliable and efficient infrastructure. Thus, it can provide a flexible architecture for different projects while guaranteeing a high scalability level.
What is the incentive testnet Denali?
The Denali testnet is the third Avalanche testnet; the first two were Borealis and Cascade.
For Denali, Avalanche has launched a 15-day incentivized program, from June 1 to 15, 2020.
Anyone launching a node between June 1 and June 8, with more than 30% uptime and maintaining the node up to date according to releases, will be able to receive 2000 Avalanche. The reward will be locked for one year from the launch of the mainnet.
There were 1000 spots available for the program; the goal was to reach at least 1000 nodes to test the network.
The Denali testnet in figures
- More than 1050 nodes and block validators
- More than 47 countries with at least one node
- 15 days of incentive testnet
- 5 versions of testnet Denali deployed
- 11 blockchains created
- 159 tokens created on Avalanche
- 16 subnets
- The GitHub activity during the Denali testnet per repository: More than 222 commits during the incentive period.
- 90 commits on Gecko
- 42 commits on Ava Explorer
- 42 commits on doc ava
- 4 commits on Avash
- 28 commits on Slopes
- commits on ortelius
- commits on ava-quicksign
What issues did Avalanche face? How did they solve them?
On the first deployed version, as more nodes joined the network, the system’s bootstrap and synchronization were longer. For two days, between the 7 and the 9 of June, it was difficult to synchronize a new node, due to the bootstrap latency.
Also, the faucet had issues sending nAvalanche to X-Chain addresses. The explorer encountered some frictions to display all the validators node IDs and transaction status.
The team was entirely dedicated to helping anyone who wanted to run a node on the Avalanche Denali testnet. There were multiple support channels on Discord to ensure low SLA for any kind of needs or assistance. There was constant communication from Avalanche; for example, the testnet status was updated at least once a day to keep validators and newcomers informed.
Avalanche adapted the rules of the incentive challenge to be fair with all the participants and let everyone have a chance to run a node. As a result, the team reduced the uptime required to complete the challenge to 108 hours (30%), instead of the original 180 hours (50%).
How did Avalanche successfully engage with a high number of participants?
To attract a large number of participants to the Denali incentive testnet, Avalanche set a 2,000 Avalanche reward for the first 1,000 validators. Emin Gün Sirer, Avalanche’s well-known CEO, engaged with his large Twitter following to raise awareness to support the Denali incentive program. The team was committed to helping all the participants and developers.
A special mention goes to the documentation. The API and the website are well documented, making it very easy to launch a node and interact with the network.
What are our thoughts on the Denali testnet event?
Denali was a huge success:
- It was the only network we can think of to engage with a large node operator community on its testnet
- The testnet prepared Avalanche to what could happen during his mainnet
- Avalanche team manage to do a network upgrade in a very short timeframe and fix issues
- It showed the efficiency of Avalanche support
- Avalanche’s team engaged with community members, node operators, and developers
How did ablock contribute to the success of Denali?
We wanted to help the community participate in this event. We thought about what could help a newcomer join this testnet in the most straightforward way.
First, we expanded the official guide adding the steps to set up a VPS. However, several users still had technical difficulties, as they had to copy/paste large chunks of code, which was a source of error.
Most importantly, it could be automated!
To make things easy for everyone, we created two scripts:
- a script to initialize the Denali Testnet: the open-source script installs all the dependencies, launching the node as a service.
2. A script to make the node join the Avalanche Denali testnet.
Ablock released two tutorials and two scripts to launch an Avalanche node on the Denali testnet.
- How to launch a node on AWS, in English and French.
- The scripts to launch and deploy an Avalanche node, available in 6 languages: English, French, Italian, German, Turkish, and Portuguese.
The scripts were used 502 times by 274 unique users, and 23 commits over the testnet period.
ablock is a staking service provider with a focus on community engagement. We build software, tools, and other cool stuff.
Check us out!
About AVA Labs:
Avalanche Labs makes it simple to launch finance applications using blockchain technology — with highly scalable and efficient networks, customizable public and private blockchains, the capability to create any digital asset, and more. We are empowering people to build an open, simple, and democratic internet of finance.