Skip to content

Commit

Permalink
feat(resharding): Full forks support in flat storage (#12727)
Browse files Browse the repository at this point in the history
This PR fixes the remaining issue in `FlatStorageResharder` that
prevented the chain from progressing at resharding boundary in some
corner cases.

Two possible solutions have been considered: 
- Postponing the split task until the last block of the epoch becomes
final
- Postponing the split task until one candidate resharding block becomes
final

I've decided to proceed with the second option, as it was building on
existing code, and the changes were limited in scope to the inner impl
of `FlatStorageResharder`. In this way the resharder remains entirely
decoupled from epoch manager.

Also in this PR:
- Minor refactoring: task scheduling became a bit more involved in order
to handle multiple resharding requests that can get intertwined.
- New unit test to validate the implementation

Now the existing tests for forks in `resharding_v3` have been finally
`unignored` 💪
  • Loading branch information
Trisfald authored Jan 14, 2025
1 parent 8c0e9b9 commit cf45cc5
Show file tree
Hide file tree
Showing 4 changed files with 292 additions and 111 deletions.
Loading

0 comments on commit cf45cc5

Please sign in to comment.