diff options
| author | 2026-03-03 19:09:03 +0800 | |
|---|---|---|
| committer | 2026-03-03 19:09:03 +0800 | |
| commit | e67fbfc75de011c2c7685ae7a10dfce702b2a620 (patch) | |
| tree | a5f8fb8c6a37d709531b0b40f6a9ea4d41484b31 | |
| parent | objectstore/packed: Check pack/idx checksums here. (diff) | |
| signature | No signature | |
TODO: What we need before we do the network protocols?
| -rw-r--r-- | TODO | 17 |
1 files changed, 17 insertions, 0 deletions
@@ -0,0 +1,17 @@ +Some basics to implement before we could really have network +protocols: + +For client-side fetch, and server-side receive, we'll need: +* Creating indexes (.idx, .rev) from packs (streaming API) +* A streaming hash verifier for the pack ingestion path. +* Other things involving pack ingestion, such as reading and + validating the pack header, un-thinning thin objects, streaming + byte to a quarantined .pack while hashing the trailer, checking the + trailer near the end. + +For client-side send, and server-side upload, we'll need: +* Reachability walk (always iterators or otherwise streaming; + haves/wants; never an entire slice/map of OIDs) +* Delta compression based on FastCDC; see 9front git +* Using bitmaps +* Investigate in detail the architecture of creating thin packs |
