Sidechain Proposal - Second and third weeks summary
🌐 Echelon Network Updates: Sync Mode and Recovery System
⚙️ What's New?
Those last weeks, our efforts were focused on increasing stability, improving synchronization, and making the network more resilient during live testnet operations. After several resets and intense testing, we’ve implemented new logic that boosts overall efficiency.
⚡ 1. Better Sync Mode Management
We’ve redefined how and when nodes enter and exit sync mode to prevent instability and fork scenarios caused by premature transitions.
✅ What's Improved?
- Nodes now enter sync mode only when more than 3 blocks behind based on a consensus between nodes.
- They exit sync mode at the same time all together.
- Behind block counter now updates slowly and deliberately to avoid rapid toggling.
⚠️ Why This Matters
Previously, nodes could enter/exit sync mode too quickly, causing forks and unpredictable behavior. This update makes syncing more deliberate and stable.
🔄 2. Enhanced Block Recovery System
To fix issues with nodes falling behind or getting stuck, we’ve improved the block recovery process significantly.
✅ Key Changes
- Recovery now requests missing blocks from multiple peers in parallel.
- Load is distributed more intelligently, speeding up catch-up.
- Improved handling of duplicate blocks, reducing processing failures.
- Logs now clearly indicate which peer provided which block for full visibility.
🔗 3. Smarter RPC Node Handling
We've added logic to ensure that RPC nodes don't fall behind and cause bad data propagation.
✅ How It Works
- Nodes automatically detect lagging RPC endpoints.
- Every 10 seconds, each node checks if the selected RPC is more than 5 blocks behind.
- If so, that RPC is removed and replaced by a healthier peer.
🧠 4. Improved Diagnostics & Logging
To make it easier to debug sync problems and witness issues:
- Behind blocks value now logs both expected and current block.
- Additional log entries show forks, missing blocks, and failed sync attempts.
- Nodes now track the block creator and previous hash for better fork detection.
📈 Testnet Results
After applying these updates, we tested them across 5 global nodes with the following results:
- Testnet reached 100k blocks multiple times and is currently at 288809 blocks.
- 600+ unsync/sync attempts across all nodes, with only 1 fork out of 5 nodes.
- Sync mode transitions are now smooth and stable.
- Recovery process is fast, even when 50+ blocks behind.
🔍 What’s Next?
We’re continuing to test different sync scenarios, improve error handling, and explore dynamic tuning. As the testnet becomes more stable, we’ll also begin to work on the stress test, transactions and the UI.
Additionally, several other improvements have been made to the network, though they are not listed here.
🎁 Echelon Airdrop Repository
We’ve published a new script for the incoming airdrop of Echelon tokens.
🔗 FutureShockco/echelon-airdrop
This repository, is used to define the airdrop rules and snapshot logic for Echelon. It is designed to fairly distribute Echelon tokens for the voters of the sidechain proposal (including their proxies), ensuring transparency and flexibility in the allocation process.
📅 Biweekly Updates
We’ll keep posting updates like this every 1–2 weeks depending on progress. Next, expect improvements related to fork resolution, block production fairness, and real-time RPC failover metrics.
🔗 Echelon GitHub: FutureShockco/echelon
This summary was generated with help from AI using real testnet logs and GitHub commits to ensure accuracy and technical depth.
We're getting closer to the next step for Steem after the fallout. I'm looking forward to seeing what y'all can do!