Export all index entries as key-value pairs (for snapshot transfer).
(&self)
| 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<()> { |
no test coverage detected