Skip to main content

recover

Function recover 

Source
async fn recover(io: &dyn WalObjectIo) -> Result<Recovered>
Expand description

Rebuilds the catalog from object headers and footers, so recovery costs a few small reads per object however large the objects are. Segments are not read; a segment checksum is verified by the read that decodes it. Footers are fetched for up to RECOVERY_CONCURRENCY objects at a time and indexed in sequence order, so the catalog checks the entry ranges of every object against its predecessors like a sequential replay. Only the objects on the chain select_chain picks are indexed.