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

Method export_documents

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

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

(&self)

Source from the content-addressed store, hash-verified

256
257 /// Export all documents as key-value pairs (for snapshot transfer).
258 pub fn export_documents(&self) -> crate::Result<Vec<(String, Vec<u8>)>> {
259 let txn = self.db.begin_read().map_err(|e| redb_err("read txn", e))?;
260 let table = txn
261 .open_table(DOCUMENTS)
262 .map_err(|e| redb_err("open docs", e))?;
263 let mut pairs = Vec::new();
264 let iter = table
265 .range::<&str>(..)
266 .map_err(|e| redb_err("iter docs", e))?;
267 for entry in iter {
268 let entry = entry.map_err(|e| redb_err("read doc entry", e))?;
269 pairs.push((entry.0.value().to_string(), entry.1.value().to_vec()));
270 }
271 Ok(pairs)
272 }
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>)>> {

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