Type Alias MySqlStore

Source
pub type MySqlStore = RdsStore<Arc<Pool<MySql>>, MySqlExecutorFactory, MySqlTemplateSet>;
Expand description

A MySQL-backed key-value store. It uses [sqlx::Pool] as the connection pool for RdsStore.

Aliased Type§

struct MySqlStore {
    max_txn_ops: usize,
    txn_retry_count: usize,
    executor_factory: MySqlExecutorFactory,
    sql_template_set: MySqlTemplateSet,
    _phantom: PhantomData<Arc<Pool<MySql>>>,
}

Fields§

§max_txn_ops: usize§txn_retry_count: usize§executor_factory: MySqlExecutorFactory§sql_template_set: MySqlTemplateSet§_phantom: PhantomData<Arc<Pool<MySql>>>

Implementations§

Source§

impl MySqlStore

Source

pub async fn with_url( url: &str, table_name: &str, max_txn_ops: usize, ) -> Result<KvBackendRef>

Create MySqlStore impl of KvBackendRef from url.

Source

pub async fn with_mysql_pool( pool: Pool<MySql>, table_name: &str, max_txn_ops: usize, ) -> Result<KvBackendRef>

Create MySqlStore impl of KvBackendRef from [sqlx::Pool].

Trait Implementations§

Source§

impl KvQueryExecutor<Arc<Pool<MySql>>> for MySqlStore

Source§

fn range_with_query_executor<'life0, 'life1, 'life2, 'async_trait>( &'life0 self, query_executor: &'life1 mut ExecutorImpl<'life2, Arc<Pool<MySql>>>, req: RangeRequest, ) -> Pin<Box<dyn Future<Output = Result<RangeResponse>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait, 'life2: 'async_trait,

Source§

fn batch_put_with_query_executor<'life0, 'life1, 'life2, 'async_trait>( &'life0 self, query_executor: &'life1 mut ExecutorImpl<'life2, Arc<Pool<MySql>>>, req: BatchPutRequest, ) -> Pin<Box<dyn Future<Output = Result<BatchPutResponse>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait, 'life2: 'async_trait,

Source§

fn batch_get_with_query_executor<'life0, 'life1, 'life2, 'async_trait>( &'life0 self, query_executor: &'life1 mut ExecutorImpl<'life2, Arc<Pool<MySql>>>, req: BatchGetRequest, ) -> Pin<Box<dyn Future<Output = Result<BatchGetResponse>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait, 'life2: 'async_trait,

Batch get with certain client. It’s needed for a client with transaction.
Source§

fn delete_range_with_query_executor<'life0, 'life1, 'life2, 'async_trait>( &'life0 self, query_executor: &'life1 mut ExecutorImpl<'life2, Arc<Pool<MySql>>>, req: DeleteRangeRequest, ) -> Pin<Box<dyn Future<Output = Result<DeleteRangeResponse>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait, 'life2: 'async_trait,

Source§

fn batch_delete_with_query_executor<'life0, 'life1, 'life2, 'async_trait>( &'life0 self, query_executor: &'life1 mut ExecutorImpl<'life2, Arc<Pool<MySql>>>, req: BatchDeleteRequest, ) -> Pin<Box<dyn Future<Output = Result<BatchDeleteResponse>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait, 'life2: 'async_trait,

Source§

fn put_with_query_executor<'life0, 'life1, 'life2, 'async_trait>( &'life0 self, query_executor: &'life1 mut ExecutorImpl<'life2, T>, req: PutRequest, ) -> Pin<Box<dyn Future<Output = Result<PutResponse>> + Send + 'async_trait>>
where Self: Sync + 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait, 'life2: 'async_trait,