mirror of
https://github.com/seaweedfs/seaweedfs.git
synced 2026-09-05 15:47:13 +00:00
Adds minimal historical-data prototype to enginev2: - WALHistory: retained-prefix model with Append, Commit, AdvanceTail, Truncate, EntriesInRange, IsRecoverable, StateAt - MakeHandshakeResult connects WAL state to outcome classification - RecordTruncation execution API for divergent tail cleanup - CompleteSessionByID gates on truncation when required - Zero-gap requires exact equality (FlushedLSN == CommittedLSN) - Replica-ahead classified as CatchUp with mandatory truncation 15 new tests: WAL basics, provable recoverability, unprovable gap, exact boundary, truncation enforcement, WAL-backed end-to-end recovery with data verification. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
V2 Prototype
Experimental WAL V2 prototype code lives here.
Current prototype:
fsmv2/: pure in-memory replication FSM prototypevolumefsm/: volume-level orchestrator prototype abovefsmv2distsim/: early distributed/data-correctness simulator with synthetic 4K block values
Rules:
- do not wire this directly into WAL V1 production code
- keep interfaces and tests focused on architecture learning
- promote pieces into production only after V2 design stabilizes
Windows test workflow
Because normal go test may be blocked by Windows Defender when it executes temporary test binaries from %TEMP%, use:
powershell -ExecutionPolicy Bypass -File .\sw-block\prototype\run-tests.ps1
This builds test binaries into the workspace and runs them directly.