Skip to content

refactor: split storage engine into focused submodules#184

Merged
BrianBland merged 2 commits into
mainfrom
split-large-files
Jan 25, 2026
Merged

refactor: split storage engine into focused submodules#184
BrianBland merged 2 commits into
mainfrom
split-large-files

Conversation

@BrianBland

@BrianBland BrianBland commented Jan 10, 2026

Copy link
Copy Markdown
Collaborator

Split src/storage/engine.rs (3,817 lines) into 8 smaller, focused modules:

  • mod.rs (142 lines): Core StorageEngine struct and public API
  • error.rs (43 lines): Error enum and From implementations
  • read.rs (192 lines): get_account, get_storage, get_value_from_page
  • write.rs (282 lines): set_values, set_values_in_page, set_values_in_cloned_page
  • handlers.rs (709 lines): Trie modification handlers (branch/leaf operations)
  • page_ops.rs (281 lines): allocate, orphan, clone, split pages
  • helpers.rs (161 lines): Utility functions (prefix matching, subtrie ops)
  • tests.rs (2,286 lines): Extracted test module

@cb-heimdall

cb-heimdall commented Jan 10, 2026

Copy link
Copy Markdown
Collaborator

✅ Heimdall Review Status

Requirement Status More Info
Reviews 1/1
Denominator calculation
Show calculation
1 if user is bot 0
1 if user is external 0
2 if repo is sensitive 0
From .codeflow.yml 1
Additional review requirements
Show calculation
Max 0
0
From CODEOWNERS 0
Global minimum 0
Max 1
1
1 if commit is unverified 0
Sum 1

@BrianBland
BrianBland force-pushed the split-large-files branch 2 times, most recently from 31583e0 to af500aa Compare January 16, 2026 22:45
@BrianBland
BrianBland requested a review from and-cb January 16, 2026 23:01
@BrianBland
BrianBland requested a review from refcell January 23, 2026 18:35
Comment thread src/storage/engine/mod.rs
Comment thread src/storage/engine/mod.rs
Comment thread src/storage/engine/mod.rs Outdated
Comment thread src/storage/engine/error.rs Outdated
refcell
refcell previously approved these changes Jan 23, 2026

@refcell refcell left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

A few non-blocker nits. Otherwise nice refactor!

Split src/storage/engine.rs (3,817 lines) into 8 smaller, focused modules:

- mod.rs (142 lines): Core StorageEngine struct and public API
- error.rs (43 lines): Error enum and From implementations
- read.rs (192 lines): get_account, get_storage, get_value_from_page
- write.rs (282 lines): set_values, set_values_in_page, set_values_in_cloned_page
- handlers.rs (709 lines): Trie modification handlers (branch/leaf operations)
- page_ops.rs (281 lines): allocate, orphan, clone, split pages
- helpers.rs (161 lines): Utility functions (prefix matching, subtrie ops)
- tests.rs (2,286 lines): Extracted test module
@cb-heimdall
cb-heimdall dismissed refcell’s stale review January 23, 2026 22:35

Approved review 3699899609 from refcell is now dismissed due to new commit. Re-request for approval.

@BrianBland
BrianBland merged commit 00c06fa into main Jan 25, 2026
19 checks passed
@BrianBland
BrianBland deleted the split-large-files branch January 25, 2026 16:07
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.

3 participants