Skip to content

Commit 2575ff4

Browse files
committed
refactoring
1 parent 7fb85e7 commit 2575ff4

1 file changed

Lines changed: 44 additions & 47 deletions

File tree

mutiny-core/src/lib.rs

Lines changed: 44 additions & 47 deletions
Original file line numberDiff line numberDiff line change
@@ -828,55 +828,56 @@ impl<S: MutinyStorage> MutinyWalletBuilder<S> {
828828
storage: &S,
829829
config: &MutinyWalletConfig,
830830
) {
831-
if let (Some(lsp_url), Ok(Some(node_id))) = (config.lsp_url.as_ref(), storage.get_node_id())
832-
{
833-
match fetch_lnd_channels_snapshot(&Client::new(), lsp_url, &node_id, &logger).await {
834-
Ok(first_lnd_snapshot) => {
835-
log_debug!(
836-
logger,
837-
"First fetched lnd snapshot: {:?}",
838-
first_lnd_snapshot
839-
);
831+
let (Some(lsp_url), Ok(Some(node_id))) = (config.lsp_url.as_ref(), storage.get_node_id())
832+
else {
833+
log_warn!(logger, "LSP URL or node ID not found");
834+
return;
835+
};
840836

841-
let pending = VSS_MANAGER.get_pending_writes();
842-
if pending.is_empty()
843-
|| (pending.len() == 1
844-
&& pending.iter().any(|(key, _)| key == DEVICE_LOCK_KEY))
845-
{
846-
if let Ok(second_lnd_snapshot) =
847-
fetch_lnd_channels_snapshot(&Client::new(), lsp_url, &node_id, &logger)
848-
.await
849-
{
850-
log_debug!(
851-
logger,
852-
"Second fetched lnd snapshot: {:?}",
853-
second_lnd_snapshot
854-
);
855-
if first_lnd_snapshot.snapshot == second_lnd_snapshot.snapshot {
856-
log_debug!(logger, "Saving lnd snapshot");
857-
if let Err(e) = storage.write_data(
858-
LND_CHANNELS_SNAPSHOT_KEY.to_string(),
859-
&second_lnd_snapshot,
860-
Some(now().as_secs() as u32),
861-
) {
862-
log_error!(logger, "Error saving lnd snapshot: {e}");
863-
}
864-
}
865-
} else {
866-
log_error!(logger, "Second lnd snapshot fetch failed");
867-
}
868-
} else {
869-
log_info!(
870-
logger,
871-
"VSS writing in progress: {:?}, skipping lnd snapshot update",
872-
pending
873-
);
874-
}
837+
let first_lnd_snapshot =
838+
match fetch_lnd_channels_snapshot(&Client::new(), lsp_url, &node_id, &logger).await {
839+
Ok(snapshot) => {
840+
log_debug!(logger, "First fetched lnd snapshot: {:?}", snapshot);
841+
snapshot
875842
}
876843
Err(e) => {
877844
log_error!(logger, "First lnd snapshot fetch failed: {e}");
845+
return;
846+
}
847+
};
848+
849+
let pending = VSS_MANAGER.get_pending_writes();
850+
if pending.is_empty()
851+
|| (pending.len() == 1 && pending.iter().any(|(key, _)| key == DEVICE_LOCK_KEY))
852+
{
853+
let second_lnd_snapshot =
854+
match fetch_lnd_channels_snapshot(&Client::new(), lsp_url, &node_id, &logger).await
855+
{
856+
Ok(snapshot) => {
857+
log_debug!(logger, "Second fetched lnd snapshot: {:?}", snapshot);
858+
snapshot
859+
}
860+
Err(e) => {
861+
log_error!(logger, "Second lnd snapshot fetch failed: {e}");
862+
return;
863+
}
864+
};
865+
if first_lnd_snapshot.snapshot == second_lnd_snapshot.snapshot {
866+
log_debug!(logger, "Saving lnd snapshot");
867+
if let Err(e) = storage.write_data(
868+
LND_CHANNELS_SNAPSHOT_KEY.to_string(),
869+
&second_lnd_snapshot,
870+
Some(now().as_secs() as u32),
871+
) {
872+
log_error!(logger, "Error saving lnd snapshot: {e}");
878873
}
879874
}
875+
} else {
876+
log_info!(
877+
logger,
878+
"VSS writing in progress: {:?}, skipping lnd snapshot update",
879+
pending
880+
);
880881
}
881882
}
882883

@@ -983,10 +984,6 @@ impl<S: MutinyStorage> MutinyWalletBuilder<S> {
983984
log_debug!(logger_clone, "waiting for VSS to finish");
984985
sleep(300).await;
985986
}
986-
while is_updating_lnd_snapshot.load(Ordering::SeqCst) {
987-
log_debug!(logger_clone, "waiting for snapshot to finish");
988-
sleep(300).await;
989-
}
990987
if let Err(e) = storage_clone.release_device_lock(&logger_clone) {
991988
log_error!(logger_clone, "Error releasing device lock: {e}");
992989
}

0 commit comments

Comments
 (0)