Development Update
2nd July – 9th July
Check out the latest from Humanode's development team:
🔺 Finality Incident Analysis
The voting of nodes to finalize a block in Humanode occurs two steps back when producing the next block (for instance, block #5 finalizes when block #7 is created). And for block production, there are two slots (we produce blocks every approx. 6 seconds): primary and secondary.
A week ago, we faced a finality stall. The issue was quickly resolved, and the chain is back to normal. This week, we conducted a thorough incident analysis. Tests confirmed a root cause. An issue arose where the node responsible for the primary slot (A1) took an unusually long time to produce its block. Consequently, the chain continues on the block produced by the node responsible for the secondary slot (B1), which already managed to produce two blocks (B2, B3). Nodes then began the voting process for finalizing B1 on the fork (B1, B2, B3). And A1 was announced and continued to produce blocks on the best chain (A1, A2, A3, etc), leading to a chain reorganization. But finalization on B1 is still in progress and can't be finished since B1 is not a part of the best chain.
We contacted the Parity team, they admitted that it is a complex issue. It would be nice to find out how and why Grandpa is voting this way, maybe it reveals the bug or not.
🔺It6 Fixes Shipped
We've shipped an internal testnet 6 update with the 119 runtime update, which fixes security issues and the Grandpa RPC-related endpoints.
🔺 Biomapper Improvements Tested
Last week, we addressed errors related to rotation scripts in Biomapper and attempted to reproduce them in a test environment.
🔺 BotBasher Enhancements Planned
We are planning code refactoring for BotBasher and developing a new API as an addition to the existing functionality.
Post #1332
934

- 👍 7
- ❤ 3
- ⚡ 1