MCPcopy Create free account
hub / github.com/NodeDB-Lab/nodedb / export_indexes

Method export_indexes

nodedb/src/engine/sparse/btree_scan.rs:275–289  ·  view source on GitHub ↗

Export all index entries as key-value pairs (for snapshot transfer).

(&self)

Source from the content-addressed store, hash-verified

273
274 /// Export all index entries as key-value pairs (for snapshot transfer).
275 pub fn export_indexes(&self) -> crate::Result<Vec<(String, Vec<u8>)>> {
276 let txn = self.db.begin_read().map_err(|e| redb_err("read txn", e))?;
277 let table = txn
278 .open_table(INDEXES)
279 .map_err(|e| redb_err("open indexes", e))?;
280 let mut pairs = Vec::new();
281 let iter = table
282 .range::<&str>(..)
283 .map_err(|e| redb_err("iter indexes", e))?;
284 for entry in iter {
285 let entry = entry.map_err(|e| redb_err("read index entry", e))?;
286 pairs.push((entry.0.value().to_string(), entry.1.value().to_vec()));
287 }
288 Ok(pairs)
289 }
290
291 /// Import documents from a snapshot (overwrites existing data).
292 pub fn import_documents(&self, pairs: &[(String, Vec<u8>)]) -> crate::Result<()> {

Callers 1

export_snapshotMethod · 0.80

Calls 4

to_stringMethod · 0.80
redb_errFunction · 0.70
pushMethod · 0.45
to_vecMethod · 0.45

Tested by

no test coverage detected