mirror of
https://github.com/seaweedfs/seaweedfs.git
synced 2026-09-20 13:30:46 +02:00
Adds sw-block/ directory with:
- distsim: protocol correctness simulator (96 tests)
- cluster model with epoch fencing, barrier semantics, commit modes
- endpoint identity, control-plane flow, candidate eligibility
- timeout events, timer races, same-tick ordering
- session ownership tracking with ID-based stale fencing
- enginev2: standalone V2 sender/session implementation (63 tests)
- per-replica Sender with identity-preserving reconciliation
- RecoverySession with FSM phase transitions and session ID
- execution APIs: BeginConnect, RecordHandshake, BeginCatchUp,
RecordCatchUpProgress, CompleteSessionByID — all sender-authority-gated
- recovery outcome branching: zero-gap, catch-up, needs-rebuild
- assignment-intent orchestration with epoch fencing
- design docs: acceptance criteria, open questions, first-slice spec,
protocol development process
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
19 lines
864 B
Markdown
19 lines
864 B
Markdown
# sw-block
|
|
|
|
Private WAL V2 and standalone block-service workspace.
|
|
|
|
Purpose:
|
|
- keep WAL V2 design/prototype work isolated from WAL V1 production code in `weed/storage/blockvol`
|
|
- allow private design notes and experiments to evolve without polluting V1 delivery paths
|
|
- keep the future standalone `sw-block` product structure clean enough to split into a separate repo later if needed
|
|
|
|
Suggested layout:
|
|
- `design/`: shared V2 design docs
|
|
- `prototype/`: code prototypes and experiments
|
|
- `.private/`: private notes, phase development, roadmap, and non-public working material
|
|
|
|
Repository direction:
|
|
- current state: `sw-block/` is an isolated workspace inside `seaweedfs`
|
|
- likely future state: `sw-block` becomes a standalone sibling repo/product
|
|
- design and prototype structure should therefore stay product-oriented and not depend on SeaweedFS-specific paths
|