Skip to content

refactor(storage): extract local worker storage adapter (#1243) - #1452

Merged
jlon merged 1 commit into
mainfrom
feat/storage-local-adapter
Jul 31, 2026
Merged

refactor(storage): extract local worker storage adapter (#1243)#1452
jlon merged 1 commit into
mainfrom
feat/storage-local-adapter

Conversation

@lzjqsdd

@lzjqsdd lzjqsdd commented Jul 31, 2026

Copy link
Copy Markdown
Member

Summary

Extracts the worker local storage implementation into a new curvine-storage-local adapter crate while preserving the existing local block storage behavior. curvine-server now depends on the adapter and keeps the existing worker storage and block metadata paths available through re-exports.

Issue Describe / Design

Related to #1243

Design notes:

  • Moved the existing worker local storage modules and worker block metadata into crates/adapters/curvine-storage-local.
  • Added minimal crate wiring with Cargo.toml, lib.rs, workspace membership, and curvine-server dependency wiring.
  • Kept SPDK-specific local metadata and feature wiring explicit through curvine-storage-local/spdk; no new SPDK or RDMA link path was added.
  • Preserved the current curvine-server import surface with re-exports so runtime behavior remains unchanged.

Changes

Module / File Change Impact on existing behavior
crates/adapters/curvine-storage-local New adapter crate containing the moved local worker storage implementation and block metadata. None
Cargo.toml, Cargo.lock Registered the new crate as a workspace/default member and dependency. None
curvine-server/Cargo.toml Added curvine-storage-local and forwarded storage-local SPDK features. None
curvine-server/src/worker/mod.rs Re-exported curvine_storage_local as worker::storage. None
curvine-server/src/worker/block/mod.rs Re-exported BlockMeta and BlockState from the new adapter crate. None

Test verified

Test case Result Notes
make format PASS Required project format/check gate
cargo check -p curvine-storage-local PASS New adapter crate checks independently
cargo check -p curvine-server PASS Server caller wiring checks
cargo test -p curvine-storage-local PASS 50 passed
cargo test -p curvine-server worker::block::block_store PASS 8 passed, 1 ignored manual benchmark

Dependencies

Copilot AI review requested due to automatic review settings July 31, 2026 11:56

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Copilot was unable to review this pull request because the user who requested the review has reached their quota limit.

@jlon
jlon merged commit 3dbbee7 into main Jul 31, 2026
11 checks passed
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