github.com/Finschia/finschia-sdk@v0.48.1/x/upgrade/spec/README.md (about) 1 <!-- 2 order: 0 3 title: Upgrade Overview 4 parent: 5 title: "upgrade" 6 --> 7 8 # `upgrade` 9 10 ## Abstract 11 12 `x/upgrade` is an implementation of a Cosmos SDK module that facilitates smoothly 13 upgrading a live Cosmos chain to a new (breaking) software version. It accomplishes this by 14 providing a `BeginBlocker` hook that prevents the blockchain state machine from 15 proceeding once a pre-defined upgrade block height has been reached. 16 17 The module does not prescribe anything regarding how governance decides to do an 18 upgrade, but just the mechanism for coordinating the upgrade safely. Without software 19 support for upgrades, upgrading a live chain is risky because all of the validators 20 need to pause their state machines at exactly the same point in the process. If 21 this is not done correctly, there can be state inconsistencies which are hard to 22 recover from. 23 24 <!-- TOC --> 25 1. **[Concepts](01_concepts.md)** 26 2. **[State](02_state.md)** 27 3. **[Events](03_events.md)**