mirror of
https://github.com/deuxfleurs-org/garage.git
synced 2026-08-31 17:28:13 +00:00
Fix merkle updater not being notified; improved logging
This commit is contained in:
+7
-6
@@ -4,7 +4,7 @@ use std::time::Duration;
|
||||
|
||||
use futures::select;
|
||||
use futures_util::future::*;
|
||||
use log::{info, warn};
|
||||
use log::{debug, warn};
|
||||
use serde::{Deserialize, Serialize};
|
||||
use sled::transaction::{
|
||||
ConflictableTransactionError, ConflictableTransactionResult, TransactionalTree,
|
||||
@@ -109,11 +109,11 @@ impl MerkleUpdater {
|
||||
match x {
|
||||
Ok((key, valhash)) => {
|
||||
if let Err(e) = self.update_item(&key[..], &valhash[..]) {
|
||||
warn!("Error while updating Merkle tree item: {}", e);
|
||||
warn!("({}) Error while updating Merkle tree item: {}", self.table_name, e);
|
||||
}
|
||||
}
|
||||
Err(e) => {
|
||||
warn!("Error while iterating on Merkle todo tree: {}", e);
|
||||
warn!("({}) Error while iterating on Merkle todo tree: {}", self.table_name, e);
|
||||
tokio::time::delay_for(Duration::from_secs(10)).await;
|
||||
}
|
||||
}
|
||||
@@ -152,8 +152,9 @@ impl MerkleUpdater {
|
||||
.is_ok();
|
||||
|
||||
if !deleted {
|
||||
info!(
|
||||
"Item not deleted from Merkle todo because it changed: {:?}",
|
||||
debug!(
|
||||
"({}) Item not deleted from Merkle todo because it changed: {:?}",
|
||||
self.table_name,
|
||||
k
|
||||
);
|
||||
}
|
||||
@@ -195,7 +196,7 @@ impl MerkleUpdater {
|
||||
|
||||
if children.len() == 0 {
|
||||
// should not happen
|
||||
warn!("Replacing intermediate node with empty node, should not happen.");
|
||||
warn!("({}) Replacing intermediate node with empty node, should not happen.", self.table_name);
|
||||
Some(MerkleNode::Empty)
|
||||
} else if children.len() == 1 {
|
||||
// We now have a single node (case when the update deleted one of only two
|
||||
|
||||
Reference in New Issue
Block a user