Skip to content

Conversation

GheisMohammadi
Copy link
Contributor

This pull request introduces a specialized synchronization pipeline for epoch chains to reduce resource overhead. The changes create a clear separation between regular shard chain synchronization and epoch chain synchronization, ensuring that epoch chains only run the minimal stages necessary for their operation.
The main improvement comes from the new CreateStagedEpochSync function that automatically detects when a node is running an epoch chain and configures a lightweight sync pipeline. Instead of running all the standard stages like bodies, states, and receipts synchronization, epoch chains now only execute the essential SyncEpoch and Finish stages. This optimization significantly reduces memory usage and processing overhead since epoch chains don't need to store or process full block data.
The downloader now intelligently chooses between the full staged sync pipeline for regular shard chains and the specialized epoch sync pipeline for epoch chains. This automatic detection ensures that nodes running on the beacon chain shard get the appropriate sync behavior without requiring manual configuration. The changes maintain full backward compatibility while providing better performance for crosslinks processing, which relies heavily on keeping epoch chains synchronized with minimal latency.
These optimizations directly address the crosslinks processing requirements by ensuring that epoch chains stay synchronized efficiently, preventing resource conflicts between different sync types, and maintaining a clean architectural separation between beacon chain epoch blocks and regular shard chain operations.

@GheisMohammadi GheisMohammadi self-assigned this Sep 4, 2025
@GheisMohammadi GheisMohammadi force-pushed the improve/crosslinks_processing branch 2 times, most recently from 021f322 to c59cb47 Compare September 4, 2025 20:27
@GheisMohammadi GheisMohammadi force-pushed the improve/crosslinks_processing branch 2 times, most recently from ccdbccb to 43173e0 Compare September 4, 2025 23:21
@GheisMohammadi GheisMohammadi force-pushed the improve/crosslinks_processing branch from 134d057 to 7728bf8 Compare September 8, 2025 09:13
@GheisMohammadi GheisMohammadi force-pushed the improve/crosslinks_processing branch from a26e30b to acb4491 Compare September 9, 2025 14:23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants