Ardor 3.0.0e has been released - new testnet with pruning enabled!
29 December 2020
When the idea about the Ardor blockchain platform was announced back in 2016, the developers presented their vision of Ardor as a solution to several fundamental problems common to blockchain technology - the scalability bottleneck caused by the blockchain bloat, the use of a single native token for consensus security, unit of value, and transaction fees, the need for custom blockchain as a service solution running as part of a public blockchain platform. At its launch, on 01.01.2018, the Ardor software already had a functional multichain architecture, achieving the promised separation of consensus security provided by the parent chain, and multiple child chains with their own native tokens. The unique bundling feature allowed transaction fees to be paid in the child chain tokens, optionally sponsored by the bundlers. The blockchain as a service functionality provided by custom child chains was later further enhanced to allow unique hybrid permissioned child chains. A lightweight contract framework was also developed to allow automation of transactions in a safer manner using stateless contracts deployed on the Ignis child chain. Finally, after many months of development and testing, the Jelurida team is now proud to present one major missing piece of promised Ardor functionality, our solution to the blockchain bloat problem - the snapshotting and pruning feature.
The experimental 3.0.0e Ardor release, now available for use by the general public on a dedicated new testnet instance, is the first to include the ability to fully prune child chain transactions from the blockchain. If pruning is enabled, by setting nxt.pruneChildChains=true in nxt.properties, child chain transactions are not processed during the download of the blockchain, and are pruned from storage during normal operation. Only the parent Ardor chain is processed during download, and the blockchain state is loaded from a state snapshot, downloaded automatically from the network and validated by its hash embedded in the parent chain. This design allows keeping the blockchain size down to a minimum without sacrificing security, with a new node joining the network only having to download the parent chain data, and not having to reprocess or keep the full history of child chain transactions. Yet, if necessary the pruned transactions can still be retrieved from nodes that do keep them, and their authenticity verified against the cryptographic hashes in the parent chain. The full technical description of the design and operation of Ardor's pruning and snapshotting functionality will be published at a later stage.
This version can be run in parallel with 2.3.3 mainnet or testnet installation, as it uses different networking ports (16874 for peer communication, 16876 for API, 16877 for SSL API). It is only available as a universal zip package that must be manually installed. Initial balances of the new testnet are based on a testnet snapshot taken on Dec 8, 2020, therefore users who had a testnet balance as of that date should have the same balance on the new testnet. Assets, currencies, account properties and other entities from the 2.3.3 testnet however have not been preserved in the 3.0.0e testnet. Block times have been set to 30 seconds for this testnet.
There is no other new functionality in the 3.0.0e release compared to 2.3.3. Advanced users, already experienced with setting up and running Ardor nodes, are welcome to join the new testnet by installing this release and discuss any issues on our support forum.