EOSIO Version 1.1.0 Release: Laying a Foundation for More Scalable Infrastructure Development on EOSIO
We’ve collected a lot of feedback on how the community is building applications on the platform and we are as dedicated as ever to continually improving the developer experience on EOSIO. This release targets usability of the software for developers, laying a foundation for more scalable application development and support for an infrastructure team building on the EOSIO blockchain.
In addition to release notes and documentation, the Block.one Developer Relations team — in coordination with the C++ Development team and Public Communications — will be providing an easy-to-digest summary of the features and benefits of each release and its implications on our goals for the platform. Continue reading below to learn both about completed features in this month’s release and a few “Preview Features” which will be finalized in future versions.
Completed Features in 1.1.0:
MongoDB Plugin (#4304)
The MongoDB Plugin for EOSIO nodes is an optional plugin that provides a simplified method for archiving blockchain data in a read-only MongoDB, enabling more scalable and convenient queries of that data in a manner more familiar to infrastructure developers. Data being stored directly in MongoDB allows for it to be queried without putting a load on the network nodes.
Read-Mode: HEAD (#4373)
Configuring an instance of an EOSIO node for Read-Mode: HEAD means that all RPC endpoints will return data as of the latest (head) block of the chain. This excludes any changes from unconfirmed transactions that may be relaying on the peer-to-peer network. This mode can be useful to determine what transactions have been applied to the blockchain by at least one producer but may not have reached finality.
Faster Syncing (#4649) — nodeos Quality of Life Improvement
Faster Syncing addresses two pain points discovered in prior EOSIO development: the cost of validating data when the chain is out of sync and performance degradation when syncing with a node. In version 1.1.0, EOSIO node daemon will no longer attempt to relay transactions when they are too far out of sync to provide meaningful validation. The result is a significant performance improvement and lowered cost in attempting to validate out of sync data.
Database Size Guards (#4666) — nodeos Quality of Life Improvement
Database Size Guards provide an easy way to recover exhausted databases by modifying a single config to avoid long replays and resyncs to the network. The two in-memory databases that drive EOSIO, state DB and reversible block DB, are now protected by usage guards which allow running instances of nodeos to detect imminent overages and gracefully shutdown the process before hitting the dreaded BAD_ALLOC exception that caused dirty databases and required a long replay to fix.
Preview Feature Releases in 1.1.0:
The following were released as “Preview Features” and are to be considered Alpha quality. While not production-ready, these features represent the direction in which the EOSIO blockchain software is going. We would like to invite community members to test and provide feedback on these features as they progress towards their respective releases. Check out each issue in more detail on GitHub to understand how these features are progressing and their potential impact on decentralized application development.
Stay tuned for future updates by subscribing to our mailing list on the EOSIO Developer Portal. We are excited to be continually improving the usability of the software for EOSIO developers as we continue laying a foundation for the most scalable blockchain development.