pub struct PostgresSaver { /* private fields */ }Expand description
Async Postgres checkpoint saver using sqlx.
Implementations§
Source§impl PostgresSaver
impl PostgresSaver
Sourcepub fn with_serde(pool: PgPool, serde: Arc<dyn SerializerProtocol>) -> Self
pub fn with_serde(pool: PgPool, serde: Arc<dyn SerializerProtocol>) -> Self
Create a new PostgresSaver with a custom serializer.
Sourcepub async fn from_conn_string(
conn_string: &str,
) -> Result<Self, CheckpointError>
pub async fn from_conn_string( conn_string: &str, ) -> Result<Self, CheckpointError>
Create a PostgresSaver from a connection string.
Sourcepub async fn setup(&self) -> Result<(), CheckpointError>
pub async fn setup(&self) -> Result<(), CheckpointError>
Run migrations to set up the checkpoint schema.
Source§impl PostgresSaver
Async list method for PostgresSaver.
impl PostgresSaver
Async list method for PostgresSaver.
pub async fn alist( &self, config: Option<&RunnableConfig>, filter: Option<&HashMap<String, JsonValue>>, before: Option<&RunnableConfig>, limit: Option<usize>, ) -> Result<Vec<CheckpointTuple>, CheckpointError>
Trait Implementations§
Source§impl BaseCheckpointSaver for PostgresSaver
impl BaseCheckpointSaver for PostgresSaver
Source§fn get_tuple(
&self,
config: &RunnableConfig,
) -> Result<Option<CheckpointTuple>, CheckpointError>
fn get_tuple( &self, config: &RunnableConfig, ) -> Result<Option<CheckpointTuple>, CheckpointError>
Get a checkpoint tuple by config.
Source§fn list(
&self,
config: Option<&RunnableConfig>,
filter: Option<&HashMap<String, JsonValue>>,
before: Option<&RunnableConfig>,
limit: Option<usize>,
) -> Result<Vec<CheckpointTuple>, CheckpointError>
fn list( &self, config: Option<&RunnableConfig>, filter: Option<&HashMap<String, JsonValue>>, before: Option<&RunnableConfig>, limit: Option<usize>, ) -> Result<Vec<CheckpointTuple>, CheckpointError>
List checkpoint tuples.
Source§fn put(
&self,
config: &RunnableConfig,
checkpoint: &Checkpoint,
metadata: &CheckpointMetadata,
new_versions: &ChannelVersions,
) -> Result<RunnableConfig, CheckpointError>
fn put( &self, config: &RunnableConfig, checkpoint: &Checkpoint, metadata: &CheckpointMetadata, new_versions: &ChannelVersions, ) -> Result<RunnableConfig, CheckpointError>
Store a checkpoint.
Source§fn put_writes(
&self,
config: &RunnableConfig,
writes: &[(String, String, JsonValue)],
task_id: &str,
task_path: &str,
) -> Result<(), CheckpointError>
fn put_writes( &self, config: &RunnableConfig, writes: &[(String, String, JsonValue)], task_id: &str, task_path: &str, ) -> Result<(), CheckpointError>
Store pending writes for a checkpoint.
Source§fn delete_thread(&self, thread_id: &str) -> Result<(), CheckpointError>
fn delete_thread(&self, thread_id: &str) -> Result<(), CheckpointError>
Delete all checkpoints for a thread.
fn aget_tuple<'life0, 'life1, 'async_trait>(
&'life0 self,
config: &'life1 RunnableConfig,
) -> Pin<Box<dyn Future<Output = Result<Option<CheckpointTuple>, CheckpointError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn aput<'life0, 'life1, 'life2, 'life3, 'life4, 'async_trait>(
&'life0 self,
config: &'life1 RunnableConfig,
checkpoint: &'life2 Checkpoint,
metadata: &'life3 CheckpointMetadata,
new_versions: &'life4 ChannelVersions,
) -> Pin<Box<dyn Future<Output = Result<RunnableConfig, CheckpointError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
'life4: 'async_trait,
fn aput_writes<'life0, 'life1, 'async_trait>(
&'life0 self,
config: &'life1 RunnableConfig,
writes: Vec<(String, String, JsonValue)>,
task_id: String,
task_path: String,
) -> Pin<Box<dyn Future<Output = Result<(), CheckpointError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn adelete_thread<'life0, 'async_trait>(
&'life0 self,
thread_id: String,
) -> Pin<Box<dyn Future<Output = Result<(), CheckpointError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Auto Trait Implementations§
impl !RefUnwindSafe for PostgresSaver
impl !UnwindSafe for PostgresSaver
impl Freeze for PostgresSaver
impl Send for PostgresSaver
impl Sync for PostgresSaver
impl Unpin for PostgresSaver
impl UnsafeUnpin for PostgresSaver
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
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more