mirror of
https://github.com/serai-dex/serai.git
synced 2025-12-08 12:19:24 +00:00
Clean up the Substrate block processing code
This commit is contained in:
@@ -2,6 +2,8 @@
|
||||
#![allow(unreachable_code)]
|
||||
#![allow(clippy::diverging_sub_expression)]
|
||||
|
||||
use std::time::Duration;
|
||||
|
||||
use zeroize::Zeroizing;
|
||||
|
||||
use ciphersuite::{group::ff::Field, Ciphersuite, Ristretto};
|
||||
@@ -9,6 +11,8 @@ use ciphersuite::{group::ff::Field, Ciphersuite, Ristretto};
|
||||
use serai_db::{Db, MemDb};
|
||||
use serai_client::Serai;
|
||||
|
||||
use tokio::time::sleep;
|
||||
|
||||
mod db;
|
||||
pub use db::*;
|
||||
|
||||
@@ -33,16 +37,26 @@ async fn run<D: Db, P: P2p>(
|
||||
|
||||
let mut last_substrate_block = db.last_substrate_block();
|
||||
|
||||
loop {
|
||||
match substrate::handle_new_blocks(&mut db, &key, &p2p, &serai, &mut last_substrate_block).await
|
||||
{
|
||||
Ok(()) => {}
|
||||
Err(e) => log::error!("couldn't communicate with serai node: {e}"),
|
||||
tokio::spawn(async move {
|
||||
loop {
|
||||
match substrate::handle_new_blocks(&mut db, &key, &p2p, &serai, &mut last_substrate_block)
|
||||
.await
|
||||
{
|
||||
Ok(()) => {}
|
||||
Err(e) => {
|
||||
log::error!("couldn't communicate with serai node: {e}");
|
||||
sleep(Duration::from_secs(5)).await;
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
loop {
|
||||
// Handle all messages from tributaries
|
||||
|
||||
// Handle all messages from processors
|
||||
|
||||
todo!()
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user