Expand description
Fetching batches of data from persistβs backing store
StructsΒ§
- Batch
Fetcher - Capable of fetching
LeasedBatchPart
while not holding any capabilities. - Batch
Fetcher πConfig - Encoded
Part π - A Blob object that has been fetched, but has no associated decoding logic.
- Exchangeable
Batch Part - This represents the serde encoding for
LeasedBatchPart
. We expose the struct itself (unlike other encodable structs) to attempt to provide stricter drop semantics onLeasedBatchPart
, i.e.SerdeLeasedBatchPart
is exchangeable (including over the network), whereLeasedBatchPart
is not. - Fetch
Config π - Fetched
Blob - A Blob object that has been fetched, but not at all decoded.
- Fetched
Part - A Blob object that has been fetched, but not yet fully decoded.
- Lease
- This represents the lease of a seqno. Itβs generally paired with some external state, like a hollow part: holding this lease indicates that we may still want to fetch that part, and should hold back GC to keep it around.
- Leased
Batch Part - A token representing one fetch-able batch part.
- Shard
Source Part - FetchedPart but with an accompanying permit from the fetch mem/disk semaphore.
EnumsΒ§
- Fetch
Batch πFilter - Fetched
Blob πBuf - Part
Decode Format - Format weβll use when decoding a
Part
.
ConstantsΒ§
- FETCH_
SEMAPHORE_ πCOST_ ADJUSTMENT - FETCH_
SEMAPHORE_ πPERMIT_ ADJUSTMENT - OPTIMIZE_
IGNORED_ πDATA_ FETCH - PART_
DECODE_ πFORMAT - VALIDATE_
PART_ πBOUNDS_ ON_ READ
FunctionsΒ§
- decode_
batch_ πpart_ blob - fetch_
batch_ πpart - fetch_
batch_ πpart_ blob - fetch_
leased_ πpart - Trade in an exchange-able LeasedBatchPart for the data it represents.