-
Notifications
You must be signed in to change notification settings - Fork 838
Description
Summary
Goal
- Extend the current static state sync to a dynamic model where sync targets can change during synchronization and block execution continues after finalization with a controlled queue.
Key ideas
- Start all syncers concurrently and independently.
- Allow
UpdateSyncTargetto advance the sync target while syncers are running. - Disallow further target updates once all syncers reach a consistent target.
- Finalize VM state (blockchain, atomic, shared memory, indices) before any post-finalization block execution.
- Buffer blocks that arrive during dynamic sync in a
BlockQueueand execute them after finalization, with batching and race-safe cut-offs. - Drive behavior with a clear state machine to handle edge cases and consistency
Non-goals
- No changes to consensus rules or block validation semantics.
- No redesign of underlying syncers’ low-level protocols - we adapt them via an interface for dynamic target updates.
Metadata
Metadata
Assignees
Type
Projects
Status
No status