0.3.15-pre.012-fix.001

This commit is contained in:
2026-09-16 11:38:02 +02:00
parent 31ae38853d
commit 1c28f3155f
6 changed files with 130 additions and 22 deletions

View File

@@ -1,5 +1,5 @@
// file: crates/ksp-app-raw-transaction-ingest-desk/src/app_state.rs
// version: 8
// version: 9
//! Shared backend state owned by the Raw Transaction Ingest Desk Tauri application.
@@ -121,22 +121,23 @@ impl crate::AppState {
if let std::result::Result::Err(error) = admission {
return std::result::Result::Err(error);
}
let generation = self.inventory_generation.lock();
let generation = match generation {
std::result::Result::Ok(value) => value,
std::result::Result::Err(_) => {
return std::result::Result::Err(ksp_core_lib::Error::new(
crate::ERROR_CODE_APP_STATE_LOCK_FAILED,
"Raw Transaction Ingest Desk route inventory generation lock is poisoned",
));
},
let prepared = {
let generation = self.inventory_generation.lock();
let generation = match generation {
std::result::Result::Ok(value) => value,
std::result::Result::Err(_) => {
return std::result::Result::Err(ksp_core_lib::Error::new(
crate::ERROR_CODE_APP_STATE_LOCK_FAILED,
"Raw Transaction Ingest Desk route inventory generation lock is poisoned",
));
},
};
let prepared = crate::prepare_route_start(&self.config_management, *generation, request);
match prepared {
std::result::Result::Ok(value) => value,
std::result::Result::Err(error) => return std::result::Result::Err(error),
}
};
let prepared = crate::prepare_route_start(&self.config_management, *generation, request);
let prepared = match prepared {
std::result::Result::Ok(value) => value,
std::result::Result::Err(error) => return std::result::Result::Err(error),
};
std::mem::drop(generation);
return crate::start_route_runtime(std::sync::Arc::clone(&self.route_runtime), prepared).await;
}