Artifact 1063bbbee0b4d6cdc849c181281aa0f03695ddcb73a78d5fc6a45a66b8d867de:
- File
conformance/horizon_receive_test.go
-
2026-10-28 12:52:58
— part of check-in
[41c092205e]
on branch fix/seed-delta-drop
— seedcheck: keep deltas on a dropped seed readable; make a drop atomic
Review follow-ups to the seed drop.
A delta that arrives on a seed already dropped could never be read: it was stored on a content-less row that is never filled or asked for. It is now not stored as a delta but left a phantom and asked for again in full, on a pull, a clone's phantom pull and a push to an origin. A seed that arrives in full after deltas built on it is stored just long enough to check those deltas, judge them and rewrite them as full text, and then dropped.
seedcheck.Drop runs in a savepoint (or a transaction of its own on a pool), so a failure partway, which the after-dephantomize cascade logs and commits past, leaves the seed and its dependents as they were.
An origin answering a push no longer asks for a refused seed's phantom, and a clone asking for what it left missing no longer counts one. fossil 2.28's rebuild re-adds every size<0 row to the phantom table and deletes the store-local seedrefused and seedpending tables; the CHANGELOG notes this and the one-time drop of refused seeds that older stores kept.
The client now adds to a reply's new-phantom count rather than replacing it, so a phantom made while receiving a file continues the exchange. (user: [email protected], size: 22288) [annotate] [blame] [check-ins using]
-
2026-10-28 14:07:23
— part of check-in
[93cf3b65f6]
on branch main
— Merge pull request #515 from danmestas/fix/seed-delta-drop
seedcheck: drop a seed completed as a delta in a later round (user: [email protected], size: 22288) [annotate] [blame] [check-ins using]
- 2026-10-28 14:24:28 — part of check-in [5ca59e4ee3] on branch main — Merge remote-tracking branch 'origin/main' into perf/cone-clone-resend (user: [email protected], size: 22288) [annotate] [blame] [check-ins using]
- 2026-10-28 14:24:28 — part of check-in [a40dd502cd] on branch main — Merge remote-tracking branch 'origin/main' into perf/cone-clone-rounds (user: [email protected], size: 22288) [annotate] [blame] [check-ins using]
-
2026-10-28 12:52:58
— part of check-in
[41c092205e]
on branch fix/seed-delta-drop
— seedcheck: keep deltas on a dropped seed readable; make a drop atomic