pub struct NoopPipelineRunRepository;Expand description
PipelineRunRepository that ignores all writes and returns empty
results for reads.
Suitable for tests and embedded library users that don’t have a SQL
database. All write methods return Ok(...); all read methods return
empty results (None, Vec::new(), empty HashMap/Map).
Implementations§
Trait Implementations§
Source§impl Clone for NoopPipelineRunRepository
impl Clone for NoopPipelineRunRepository
Source§fn clone(&self) -> NoopPipelineRunRepository
fn clone(&self) -> NoopPipelineRunRepository
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreimpl Copy for NoopPipelineRunRepository
Source§impl Debug for NoopPipelineRunRepository
impl Debug for NoopPipelineRunRepository
Source§impl Default for NoopPipelineRunRepository
impl Default for NoopPipelineRunRepository
Source§fn default() -> NoopPipelineRunRepository
fn default() -> NoopPipelineRunRepository
Returns the “default value” for a type. Read more
Source§impl PipelineRunRepository for NoopPipelineRunRepository
impl PipelineRunRepository for NoopPipelineRunRepository
Source§fn log_pipeline_run<'life0, 'life1, 'async_trait>(
&'life0 self,
pipeline_run_id: Uuid,
_pipeline_id: Uuid,
_pipeline_name: &'life1 str,
_dataset_id: Option<Uuid>,
_status: PipelineRunStatus,
_run_info: Option<Value>,
) -> Pin<Box<dyn Future<Output = Result<Uuid, DatabaseError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn log_pipeline_run<'life0, 'life1, 'async_trait>(
&'life0 self,
pipeline_run_id: Uuid,
_pipeline_id: Uuid,
_pipeline_name: &'life1 str,
_dataset_id: Option<Uuid>,
_status: PipelineRunStatus,
_run_info: Option<Value>,
) -> Pin<Box<dyn Future<Output = Result<Uuid, DatabaseError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Insert one row representing a status transition. Returns the new row’s
primary key (
pipeline_runs.id), which is a freshly generated UUIDv4.Source§fn latest_status<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
_dataset_ids: &'life1 [Uuid],
_pipeline_name: &'life2 str,
) -> Pin<Box<dyn Future<Output = Result<HashMap<Uuid, PipelineRunStatus>, DatabaseError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
fn latest_status<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
_dataset_ids: &'life1 [Uuid],
_pipeline_name: &'life2 str,
) -> Pin<Box<dyn Future<Output = Result<HashMap<Uuid, PipelineRunStatus>, DatabaseError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Latest status per dataset for a given pipeline name. Read more
Source§fn list_recent<'life0, 'async_trait>(
&'life0 self,
_dataset_id: Option<Uuid>,
_limit: u32,
) -> Pin<Box<dyn Future<Output = Result<Vec<PipelineRunRow>, DatabaseError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn list_recent<'life0, 'async_trait>(
&'life0 self,
_dataset_id: Option<Uuid>,
_limit: u32,
) -> Pin<Box<dyn Future<Output = Result<Vec<PipelineRunRow>, DatabaseError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Recent runs for the activity router, with optional dataset filter.
Source§fn list_recent_with_attribution<'life0, 'async_trait>(
&'life0 self,
_dataset_id: Option<Uuid>,
_limit: u32,
) -> Pin<Box<dyn Future<Output = Result<Vec<PipelineRunWithAttributionRow>, DatabaseError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn list_recent_with_attribution<'life0, 'async_trait>(
&'life0 self,
_dataset_id: Option<Uuid>,
_limit: u32,
) -> Pin<Box<dyn Future<Output = Result<Vec<PipelineRunWithAttributionRow>, DatabaseError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Recent runs with attribution (dataset + owner). Powers
GET /api/v1/activity/pipeline-runs. Single SELECT joining
pipeline_runs ⨝ datasets ⨝ users (LEFT JOIN both ways so orphaned
runs whose dataset has been deleted still surface). Read moreSource§fn reset_orphans<'life0, 'life1, 'async_trait>(
&'life0 self,
_reason: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<u64, DatabaseError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn reset_orphans<'life0, 'life1, 'async_trait>(
&'life0 self,
_reason: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<u64, DatabaseError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Restart-orphan reset: rewrite any row stuck in
INITIATED / STARTED
without a more recent successor to ERRORED with the given reason. Read moreSource§fn set_payload_field<'life0, 'life1, 'async_trait>(
&'life0 self,
_run_id: Uuid,
_key: &'life1 str,
_value: Value,
) -> Pin<Box<dyn Future<Output = Result<(), DatabaseError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn set_payload_field<'life0, 'life1, 'async_trait>(
&'life0 self,
_run_id: Uuid,
_key: &'life1 str,
_value: Value,
) -> Pin<Box<dyn Future<Output = Result<(), DatabaseError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Upsert a single payload field for a run. Concurrent calls with the
same
(run_id, key) are last-write-wins per row; calls with different
keys do not contend.Source§fn get_payload<'life0, 'async_trait>(
&'life0 self,
_run_id: Uuid,
) -> Pin<Box<dyn Future<Output = Result<Map<String, Value>, DatabaseError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_payload<'life0, 'async_trait>(
&'life0 self,
_run_id: Uuid,
) -> Pin<Box<dyn Future<Output = Result<Map<String, Value>, DatabaseError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Read all payload fields for a run as a
serde_json::Map. Returns an
empty map (not None) when the run has no payload events; returns
Err only on actual DB failures.Source§fn get_pipeline_run<'life0, 'async_trait>(
&'life0 self,
_pipeline_run_id: Uuid,
) -> Pin<Box<dyn Future<Output = Result<Option<PipelineRun>, DatabaseError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_pipeline_run<'life0, 'async_trait>(
&'life0 self,
_pipeline_run_id: Uuid,
) -> Pin<Box<dyn Future<Output = Result<Option<PipelineRun>, DatabaseError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Source§fn get_pipeline_run_by_dataset<'life0, 'life1, 'async_trait>(
&'life0 self,
_dataset_id: Uuid,
_pipeline_name: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<Option<PipelineRun>, DatabaseError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn get_pipeline_run_by_dataset<'life0, 'life1, 'async_trait>(
&'life0 self,
_dataset_id: Uuid,
_pipeline_name: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<Option<PipelineRun>, DatabaseError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Source§fn get_pipeline_runs_by_dataset<'life0, 'async_trait>(
&'life0 self,
_dataset_id: Uuid,
) -> Pin<Box<dyn Future<Output = Result<Vec<PipelineRun>, DatabaseError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_pipeline_runs_by_dataset<'life0, 'async_trait>(
&'life0 self,
_dataset_id: Uuid,
) -> Pin<Box<dyn Future<Output = Result<Vec<PipelineRun>, DatabaseError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Return one latest row per distinct
pipeline_name that has runs for
dataset_id. Result order is unspecified. Read moreAuto Trait Implementations§
impl Freeze for NoopPipelineRunRepository
impl RefUnwindSafe for NoopPipelineRunRepository
impl Send for NoopPipelineRunRepository
impl Sync for NoopPipelineRunRepository
impl Unpin for NoopPipelineRunRepository
impl UnsafeUnpin for NoopPipelineRunRepository
impl UnwindSafe for NoopPipelineRunRepository
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more