diff options
| author | tv <tv@krebsco.de> | 2026-11-03 06:46:44 +0100 |
|---|---|---|
| committer | tv <tv@krebsco.de> | 2026-11-03 06:46:44 +0100 |
| commit | af0b36a1532311669303dc8134bf74e2d607ef0c (patch) | |
| tree | 1791788fafeaf8a27fc9228dbc2d5c9b3db81021 /src/swarm/tree.rs | |
| parent | 0617951a2936a8dd7c64eb05a3605893cc9d73f1 (diff) | |
writers from authors
Diffstat (limited to 'src/swarm/tree.rs')
| -rw-r--r-- | src/swarm/tree.rs | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/src/swarm/tree.rs b/src/swarm/tree.rs index 8031a69..8093c91 100644 --- a/src/swarm/tree.rs +++ b/src/swarm/tree.rs @@ -12,11 +12,13 @@ //! it reaches routes around links that don't work: where a writer behind NAT reaches a //! single member, that one comes first and the others take it. //! -//! A sync message that passes a writer's change on says whose (`SyncEnvelope::writer`). -//! Whoever applies one passes it on to its own children in that writer's tree -//! (`forward`), however it got it; so does the writer, to all its neighbours, with its -//! own writes. A member no member it reaches comes before (or whose parent didn't get -//! the change) gets it from the announcements (`swarm::relay`), as before. +//! Whose a change is, its author says (every node writes as itself: its node ID, by +//! pair key here): whoever applies changes passes them on to its own children in each of +//! their writers' trees (`forward`), however they came; so does the writer, to all its +//! neighbours, with its own writes. A sync message along a tree also says whose +//! (`SyncEnvelope::writer`), for one that had them already (`swarm::sync`). A member no +//! member it reaches comes before (or whose parent didn't get the change) gets it from +//! the announcements (`swarm::relay`), as before. //! //! The graph is computed once per member list (tens of milliseconds for thousands of //! members), the distances once per writer and graph (`MAX_WRITERS` kept). |
