v0.3.8-pre.004

This commit is contained in:
2026-09-03 12:32:53 +02:00
parent 009b957523
commit c4198ac656
17 changed files with 902 additions and 46 deletions

View File

@@ -1,5 +1,5 @@
// file: crates/ksp-store-postgres-lib/src/runtime.rs
// version: 15
// version: 16
const APPLICATION_NAME: &str = "ksp-store";
const MAX_CONNECTION_URI_BYTES: usize = 4_096;
@@ -389,6 +389,14 @@ impl PostgresBackend {
return crate::list_raw_transactions(&self.pool, &self.network, query).await;
}
/// Inspects one payload-free random-access RAW transaction window with exact logical counts.
pub async fn inspect_raw_transactions(
&self,
query: &ksp_store_api::RawTransactionInspectionQuery,
) -> std::result::Result<ksp_store_api::RawInspectionPage<ksp_store_api::RawTransactionSummary>, crate::PostgresBackendError> {
return crate::inspect_raw_transactions(&self.pool, &self.network, query).await;
}
/// Reads one persisted RAW transaction observation by producer-owned idempotence key.
pub async fn get_raw_transaction_observation(
&self,
@@ -550,6 +558,18 @@ impl ksp_store_api::RawTransactionRead for PostgresBackend {
}
}
impl ksp_store_api::RawTransactionInspectionRead for PostgresBackend {
fn inspect_raw_transactions<'a>(
&'a self,
query: &'a ksp_store_api::RawTransactionInspectionQuery,
) -> ksp_store_api::StoreApiFuture<'a, ksp_store_api::Result<ksp_store_api::RawInspectionPage<ksp_store_api::RawTransactionSummary>>> {
return std::boxed::Box::pin(async move {
let result = PostgresBackend::inspect_raw_transactions(self, query).await;
return result.map_err(map_capability_error);
});
}
}
impl ksp_store_api::RawTransactionWrite for PostgresBackend {
fn persist_raw_transaction_acquisition<'a>(
&'a self,