Exploring the Differences Between Core and Mainsail

user avatar

by Giorgi Kostiuk

3 years ago

Made with AI


In the blog post, significant changes introduced by Mainsail are discussed along with how it distinguishes itself from the Core version. The focus is on understanding the differences between Core and Mainsail without delving into the EVM information.

Key Changes in Mainsail

Major changes in Mainsail compared to the latest Core version include:

  • Introducing a new BFT consensus mechanism with instant finality.
  • Increasing the number of active validators from 51 to 53.
  • Implementing state snapshots to speed up synchronization.
  • Eliminating the need for an external database configuration, except for the optional public API.
  • Separating the public API into a distinct process for better scalability.
  • Updating the codebase with the adoption of ES modules.
  • Switching to pnpm as the primary package manager for improved dependency management.
  • Changing the project’s license from MIT to GPLv3.

These changes collectively bolster the security, scalability, and performance of Mainsail, solidifying its position as a robust and innovative blockchain solution.

Technical Comparison

The technical variances between Mainsail and the latest Core version are outlined in a table format comparing features such as ledger database, API database, block finalization, validators, block time, and more.

Project Insights

Under this section, the technical, codebase, and general changes in Mainsail are discussed. The structure and packages of Mainsail, including crypto, transactions, and API details, are elaborated upon. For crypto transactions and API, significant changes have been made, resulting in the introduction of new packages and functionalities.

Toolchain

The blog details the toolchain used in Mainsail, including the transition from yarn to pnpm package manager, utilization of Lerna for monorepos, and the movement to ES modules for browser builds in most Mainsail packages. Recommendations for development in Visual Studio Code with specific extensions are also provided.

Tests

Uvu test runner replacing Jest in Mainsail is discussed in this section. Additional packages such as sinon, nock, esmock, and c8 used for testing are also mentioned. The rationale behind using Uvu, known for its performance, is presented.

Consensus

The consensus mechanism in Mainsail, inspired by Tendermint, and featuring block finality, block cycle, and BLS12-381 signatures, is explained in detail. The unique attributes of BLS12-381 signatures, including aggregation benefits, are highlighted.

Database

The choice of LMDB as the primary database, its performance advantages over PostgreSQL, and the state management process in Mainsail are discussed. The rationale behind utilizing LMDB and state snapshots for synchronization efficiency is outlined.

API (Optional)

The relocation of the Public API to a separate process, the synchronization process to a PostgreSQL database, and the specifics of data handling between the API and Mainsail node are described in this section.

Conclusion

The conclusion section summarizes the advancements Mainsail offers over Core V3, emphasizing improvements in consensus algorithms, database management, and modular architecture to enhance performance, scalability, and developer experience. Readers are encouraged to stay updated on ARK-related developments by following the provided link.

Tier I

Sector: #18291

Sealed Hiding Place Room

Resource Cache

Resource Cache

Tier I

Requires 25% Tier Progress to Claim
Meme Cache

Meme Cache

Tier I

Requires 50% Tier Progress to Claim
Equipment Cache

Equipment Cache

Tier I

Requires 75% Tier Progress to Claim

After collecting, hiding places will be stored in your inventory and can be opened with Keys.

Other news

Grayscale Appoints BitGo as Custodian for Hyperliquid Staking ETF

Grayscale has appointed BitGo Bank Trust as an additional custodian for its Hyperliquid Staking ETF to enhance custody services and operational flexibility.

user avatarAndrew Smith

Avalanche Sees Surge in Tokenized US Treasury Assets

The value of tokenized US Treasury assets on the Avalanche network has surged to approximately $545 million, marking a fourfold increase over the past year.

user avatarJacob Williams

Metaplanet Shows Liquidity Management with Strategic Bitcoin Transactions

Metaplanet sold 10,000 BTC for approximately $790 million and bought back 11,000 BTC for around $950 million, demonstrating its ability to manage liquidity effectively.

user avatarSon Min-ho

Navra Secures $19 Million in Series A Funding to Bridge Traditional Finance and Blockchain

Navra, a startup led by Mike Cagney, has successfully raised $19 million in Series A funding to enhance access to blockchain-based financial markets for traditional investors.

user avatarZainab Kamara

Arbitrum Proposes Strategic Initiative for USDG Stablecoin

Arbitrum has proposed a governance initiative to back USDG as a core strategic stablecoin within its ecosystem, including adding 100 million ARB to enhance liquidity and adoption.

user avatarTando Nkube

BitGo and HashKey Cloud Expand Partnership in Asia-Pacific

BitGo and HashKey Cloud have expanded their partnership to cover multiple areas of institutional crypto infrastructure, including staking, trading, custody, and asset tokenization in Singapore.

user avatarAyman Ben Youssef

Important disclaimer: The information presented on the Dapp.Expert portal is intended solely for informational purposes and does not constitute an investment recommendation or a guide to action in the field of cryptocurrencies. The Dapp.Expert team is not responsible for any potential losses or missed profits associated with the use of materials published on the site. Before making investment decisions in cryptocurrencies, we recommend consulting a qualified financial advisor.