Recent development updates and efforts have discussed our work on Precise Configuration Updates or PCU.
Our roadmap describes PCU as “A more advanced system for blockchain configuration updates that utilizes the Directory and Anchoring chains. PCU enables automatic reversion of failed updates and the ability to update halted chains, while also ensuring that all nodes update in sync (at the same block height, which is coordinated by the Directory chain) and maintain consensus regarding blockchain configurations.”
You may be wondering why PCU is so important. Here are two examples from the past demonstrating the potential risks of updates causing nodes to fall out of sync:
Case Study #1: Polygon, March 2022
The Polygon blockchain experienced a multi-hour outage in March 2022 due to an issue with one of its Heimdall nodes, which resulted in the network being down for several hours. The Polygon team suspects that the issue may have been caused by a bug in an earlier upgrade to the network's state bridging module, which affected consensus and caused different validators to be on different versions of the chain. This incident highlights the need for advanced and efficient systems for updating the configuration of a blockchain network
Case Study #2: Ethereum, August 2021
In August 2021, a bug in the Ethereum blockchain's popular Geth client caused a fork, resulting in two chains being processed simultaneously. This meant that some transactions were accepted on one chain and rejected on the other, creating a potential vulnerability that could be exploited in a double-spend attack. While developers had discovered and disclosed the bug in advance, many users failed to update their clients to the latest version, which could have prevented the split. The issue was resolved once users updated their software, and luckily the Ethereum network continued to function without any significant disruptions. Regardless, this event demonstrates the value of developing a method for automating the update process.
More Chains = More Need for PCU
When building a modular network like Chromia, chain configuration updates will occur more frequently. There are a variety of reasons for this:
- Dapps run on their own individual chains
- Dapps are given a higher level of customizability than on an EVM chain, where ‘one size fits all’
- Nodes are grouped together in clusters, meaning that not every node needs to process every dapps data
- System chains perform important network functions, and may also be updated from time to time
By taking the time to develop and test PCU, we are making our platform as resilient as possible while giving both core and dapp developers increased flexibility via the ability to update applications in real-time.
Chromia's Precise Configuration Updates feature is a critical addition to the platform's infrastructure. With PCU enabled, the process of updating the status and configuration of the network will become more precise, efficient, and secure. PCU utilizes the Directory and Anchoring chains to enable targeted and precise updates to specific nodes or groups of nodes. This helps to prevent issues like network forks and other inconsistencies that can arise when nodes are not updated in a consistent and coordinated manner.
Basic PCU is now functioning in an internal Devnet environment and works correctly under expected conditions. Several ‘edge case’ scenarios are now being tested and debugged. Once this process is complete, the feature will be integrated into our testnet.
Modern society runs on data, and every online service you’re using is built upon underlying databases - ranging from your online bank to music streaming and gaming. Chromia is a relational blockchain - a combination of a relational database and a blockchain - making it easy to develop user-friendly decentralized apps for almost any industry, including DeFi, NFTs, gaming, and more.