aboutsummaryrefslogtreecommitdiff
path: root/src/table
diff options
context:
space:
mode:
authorAlex Auvolat <alex@adnab.me>2022-06-03 12:12:25 +0200
committerAlex Auvolat <alex@adnab.me>2022-06-03 12:12:25 +0200
commitbd9ff432d716020d7235ece76257b60dc3ead95a (patch)
treefe2819ccf30bea4d0190b6b7de2efc8a02da61d0 /src/table
parentdf0877bbba91d210fa8a91bd095ca13e0ea2176f (diff)
downloadgarage-bd9ff432d716020d7235ece76257b60dc3ead95a.tar.gz
garage-bd9ff432d716020d7235ece76257b60dc3ead95a.zip
Garage works on sqlite, but it's a hack
Diffstat (limited to 'src/table')
-rw-r--r--src/table/merkle.rs9
1 files changed, 7 insertions, 2 deletions
diff --git a/src/table/merkle.rs b/src/table/merkle.rs
index f7dca97b..48d2c5dd 100644
--- a/src/table/merkle.rs
+++ b/src/table/merkle.rs
@@ -110,9 +110,14 @@ where
}
fn updater_loop_iter(&self) -> Result<bool, Error> {
- if let Some(x) = self.data.merkle_todo.iter()?.next() {
+ // TODO undo this iter hack
+ let mut iter = self.data.merkle_todo.iter()?;
+ if let Some(x) = iter.next() {
let (key, valhash) = x?;
- self.update_item(&key[..], &valhash[..])?;
+ let key = key.to_vec();
+ let valhash = valhash.to_vec();
+ drop(iter);
+ self.update_item(&key, &valhash)?;
Ok(true)
} else {
Ok(false)