Libra

Libra

  • Documentation
  • Community
  • Blog
  • libra.org
  • GitHub

›All Blog Posts

All Blog Posts

  • Full node basics: an introduction to full nodes in the Libra network
  • Steering committee now governs Libra technical development
  • Reconfiguration support is live on testnet
  • How gas works on the Libra blockchain
  • Libra Core Roadmap #2
  • How to contribute code to the Libra project: about the CLA process
  • Five months and growing strong: the Libra project
  • The Libra Consensus Protocol: Today and Next Steps
  • A Guide To Running Libra Validators
  • Simplifying Libra Transaction Payloads: Deprecation of the "Program" Type
  • September Libra Developer Update - Roadmap #1
  • Improving the LibraBFT protocol
  • Libra Developer Spotlight
  • Libra Bug Bounty Open to All
  • Libra: The Path Forward

Reconfiguration support is live on testnet

January 14, 2020

Libra Engineering Team

We're happy to announce that Libra protocol now provides initial support for reconfiguration, which is the ability to change any configuration parameter on the blockchain without restarting any validators and while preserving Libra Byzantine Fault Tolerance (LibraBFT) safety and liveness guarantees. Reconfiguration has been successfully executed several times on testnet to add and remove validators from the validator set. We expect that reconfiguration will be used to add new validators to pre-mainnet. In the future, reconfiguration can be leveraged to change other configuration parameters such as upgrading the consensus protocol or the Move language specifications.

How it works

A set of configurations — for example, a consensus protocol and a set of validators — is used to create a consensus instance. The first consensus instance is generated after the reconfiguration transaction in the genesis block. Once the first consensus instance is active, transactions are proposed and committed by this consensus instance. In the future, a reconfiguration transaction may be committed by the current consensus instance that creates a new consensus instance (potentially with a different consensus protocol and/or a different set of validators) to continue the chain of committed transactions going forward.

We were able to demonstrate the low cost of reconfiguration from the results of early experiments. The data shows that reconfiguration finished within a few seconds, and the performance cost was minor.

As depicted below, removing a node has no impact on a steady transaction rate. Adding a node temporarily slows the transaction rate for a brief period while all live nodes are trying to help the added node replay the transaction that it missed after being removed from the test Libra Blockchain. The transaction rate spike from the added node illustrates the catch-up rate for the missing transactions.

What's next

We will share a detailed reconfiguration report in the near future. Additionally, we are working on supporting more configuration parameters with reconfiguration.

Stay tuned!

Recent Posts
  • How it works
    • What's next
Libra
Learn About Libra
Welcome to LibraLibra ProtocolLibra BlockchainLife of a Transaction

Try Libra Core
My First TransactionGetting Started With Move
Policies
Privacy PolicyTerms of UseCookies PolicyCode of Conduct

Community
Developer ForumNewsletter
Social
libra
Follow @libradev
© Libra Association

To help us provide relevant content, analyze our traffic, and provide a variety of features, we use cookies. By clicking on or navigating the site, you agree to allow us to collect information on and off the Libra Website through cookies. To learn more, view our Cookie Policy:

Cookies Policy