diff options
| author | tv <tv@krebsco.de> | 2026-11-09 03:41:00 +0000 |
|---|---|---|
| committer | tv <tv@krebsco.de> | 2026-11-09 04:41:41 +0100 |
| commit | 19535a851b2a528bcd19f44b73a2d90b46adaa5e (patch) | |
| tree | 53f0364ed1cbe3f01e0b5fc1d58ba94a7c3f6e5c /src/access/sealed.rs | |
| parent | b52d4b6181e7fcf806a655d218e74de71b54cbf8 (diff) | |
remake: earlier epochs' metadata read as the snapshot built it
A snapshot leaving out earlier epochs' metadata (`snapshot::left_out`) and a rejoining
node (`catchup::prepare`) read it from the document as it stands. It is never writable
through the store, and under a policy the rules take a change to it only from an
epoch's first; but with no policy, screening judges only an epoch's root, so a member's
own change could rewrite or remove an entry: a replay window narrowed or widened, a
translation or a clock changed, a strict remake's entry gone.
Now both read it at the epoch's snapshot change (`snapshot::as_built`), as
`verify_document` reads the epoch's own: a snapshot from its base's epoch's, a
rejoining node from the target's. Every earlier entry is a copy in that change, so what
was written there since doesn't count. The first epoch follows none and has none.
Diffstat (limited to 'src/access/sealed.rs')
0 files changed, 0 insertions, 0 deletions
