github Zilliqa/Zilliqa MaoShanWang
Durian (Mao Shan Wang) release

latest releases: v9.3.5, v9.3.4, v9.3.4rc1...
5 years ago

This is the first release used in Mao Shan Wang Testnet v3.0

If you have been following our bi-weekly project updates, you may find many of the new features of Mao Shan Wang familiar. These are the features we have been working on for the past few months, and we are excited to now make these publicly available for miners and developers to test.

Core Protocol:

  1. Support for smart contracts on a sharded architecture
  2. GPU mining
  3. Coinbase rewards
  4. Gas rewards
  5. Gas pricer
  6. Difficulty adjustment of PoW
  7. Upgrading protocol
  8. Gossip protocol
  9. Multiple-In, Multiple-Out (MIMO) DS committee
  10. Event/Log transaction receipt
  11. Merged PoWs: Combining the two rounds of PoW into one round
  12. Node recovery
  13. State delta forwarding
  14. Migration to Kubernetes
  15. Archival nodes

GPU Selection for PoW Mining

Mao Shan Wang supports GPU mining. Miners may use one or multiple GPU units for one node. For example, a miner with 6 available GPUs can choose to configure one Zilliqa node to employ any combination of the 6 GPUs, or launch multiple Zilliqa nodes with each node assigned to one specific GPU.
Coinbase Rewards
In this implementation of our testnet, we will reward all the nodes (or miners) – including DS and shard nodes – based on their involvement in the consensus protocol. Specifically, the more actively a node participates in the consensus protocol through signing blocks in a transaction epoch, the more it will be rewarded with tokens. For instance, for a microblock/finalblock, a node can contribute up to two signatures, and can thus be rewarded twice.

Gas Rewards

Another feature essential to a public blockchain is the distribution of rewards to miners from gas fees. In the version, gas fees generated by processing transactions are accumulated into the total coinbase rewards. The rewards are then issued  just before the next round of PoW submissions begins.

Gas Pricer

While our transactions are already processed with gas consumption and limits are taken into consideration, the mechanism for determining actual gas pricing had yet to be implemented until recently. Our newly-coded gas pricer works by first, having miners affix to their proof-of-work (PoW) submissions a minimum gas price that they are willing to accept. The Directory Service (DS) committee then reaches consensus over the acceptable global minimum gas price for the network in the coming DS epoch. The network will thereafter only accept transactions that have a gas price larger than or equal to the agreed-upon global minimum.

Support for smart contracts on a sharded architecture

A few months ago, we released a blog post that details our design to support smart contract sharding. In the design, we leverage the DS committee to process certain types of smart contract transactions. As a result, the DS committee now runs an additional consensus round to validate those transactions. This happens after the DS committee has received data on transactions validated by shards.

Upgrading Protocol

It is crucial that a system can be upgrade or updated with new features or patches to ensure its security. We’ve implemented the first version of our upgrading protocol. A source (say https://latest-release.zilliqa.com) hosts the latest version of our source code and binary with SHA-256 value, signed by multi parties, e.g., Zilliqa Research. The software version will be stored in a separated file named VERSION, with the information of version, expected DS epoch and SHA-256 value.

Node Recovery

Node recovery is one of the more significant features that we have completed in the past few weeks. If a node was terminated for any reason (such as to complete an upgrade) and then relaunched, it will read the persistent data stored in the machine’s database (data such as the DS committee members, the sharding structure, DS and Final Blocks, etc.) in a bid to recover its last known state and to begin resynchronizing with the rest of the network.

Don't miss a new Zilliqa release

NewReleases is sending notifications on new releases.