Chain Crash Recovery Procedure
Last updated
Last updated
This procedure should be performed by Liberland Blockchain Dev Team in case of chain failure that led to blocks not being produced.
Identify the hash of the block that broke the runtime:
If finalized, maybe chain explorer has it:
Otherwise look for system.CodeUpdated
event in recent blocks
Update the JSON with chain specification in specs/
to include hash of the block with CodeUpdated
in badBlocks
. Notice: this will revert all changed made in this block and all blocks that came after it, including things like transferring funds! This might cause consistency issues for exchanges, relayers, indexers that already processed these blocks in some way, especially if it was already finalized. Example:
Perform the standard release process. Remember to also build and publish new Docker image!
Instruct all nodes in network (validators, exchanges, bridges, RPC endpoints, users) to perform .
If the removed block was already finalized, in addition to the update instruct all nodes to perform .