mirror of
https://github.com/seaweedfs/seaweedfs.git
synced 2026-09-03 14:47:04 +00:00
Finding 1: Identity no longer address-derived - ReplicaAddr.ServerID field added (stable server identity from registry) - BlockVolumeAssignment.ReplicaServerID field added (scalar RF=2 path) - ControlBridge uses ServerID, NOT address, for ReplicaID - Missing ServerID → replica skipped (fail closed), logged Finding 2: Wired into real ProcessAssignments - BlockService.v2Bridge field initialized in StartBlockService - ProcessAssignments converts each assignment via v2Bridge.ConvertAssignment BEFORE existing V1 processing (parallel, not replacing yet) - Logged at glog V(1) Finding 3: Fail-closed on missing identity - Empty ServerID in ReplicaAddrs → replica skipped with log - Empty ReplicaServerID in scalar path → no replica created - Test: MissingServerID_FailsClosed verifies both paths 7 tests: StableServerID, AddressChange_IdentityPreserved, MultiReplica_StableServerIDs, MissingServerID_FailsClosed, EpochFencing_IntegratedPath, RebuildAssignment, ReplicaAssignment Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
V2 Design
Current WAL V2 design set:
v2-algorithm-overview.mdv2-algorithm-overview.zh.mdv2-detailed-algorithm.zh.mdwal-replication-v2.mdwal-replication-v2-state-machine.mdwal-replication-v2-orchestrator.mdwal-v2-tiny-prototype.mdwal-v1-to-v2-mapping.mdv2-dist-fsm.mdv2_scenarios.mdv1-v15-v2-comparison.mdv2-scenario-sources-from-v1.mdprotocol-development-process.mdv2-acceptance-criteria.mdv2-open-questions.mdv2-first-slice-session-ownership.mdv2-prototype-roadmap-and-gates.mdv2-engine-readiness-review.mdv2-engine-slicing-plan.mdv2-protocol-truths.mdv2-production-roadmap.mdphase-07-service-slice-plan.mdagent_dev_process.md
These documents are the working design home for the V2 line.
The original project-level copies under learn/projects/sw-block/design/ remain as shared references for now.
Execution note:
- active development tracking lives under
../.private/phase/ - key completed/current phase docs include:
../.private/phase/phase-01.md../.private/phase/phase-02.md../.private/phase/phase-03.md../.private/phase/phase-04.md../.private/phase/phase-4.5.md../.private/phase/phase-05.md../.private/phase/phase-06.md../.private/phase/phase-07.md