pub struct PartitionedDmlTransactionBuilder { /* private fields */ }Expand description
A builder for PartitionedDmlTransaction.
§Example
let db_client = spanner.database_client("projects/p/instances/i/databases/d").build().await?;
let transaction = db_client.partitioned_dml_transaction().build().await?;
let statement = Statement::builder("UPDATE users SET active = true WHERE TRUE").build();
let modified_rows = transaction.execute_update(statement).await?;Implementations§
Source§impl PartitionedDmlTransactionBuilder
impl PartitionedDmlTransactionBuilder
Sourcepub fn with_exclude_txn_from_change_streams(self, exclude: bool) -> Self
pub fn with_exclude_txn_from_change_streams(self, exclude: bool) -> Self
Sets whether to exclude the transaction from change streams.
§Example
let db_client = spanner.database_client("projects/p/instances/i/databases/d").build().await?;
let transaction = db_client
.partitioned_dml_transaction()
.with_exclude_txn_from_change_streams(true)
.build()
.await?;When set to true, it prevents modifications from this transaction from being tracked in change streams.
Note that this only affects change streams that have been created with the DDL option allow_txn_exclusion = true.
If allow_txn_exclusion is not set or set to false for a change stream, updates made within this transaction
are recorded in that change stream regardless of this setting.
When set to false or not specified, modifications from this transaction are recorded in all change streams
tracking columns modified by this transaction.
Sourcepub fn with_retry_policy<P: TransactionRetryPolicy + 'static>(
self,
policy: P,
) -> Self
pub fn with_retry_policy<P: TransactionRetryPolicy + 'static>( self, policy: P, ) -> Self
Sets the retry policy for the transaction.
§Example
let db_client = spanner.database_client("projects/p/instances/i/databases/d").build().await?;
let retry_policy = BasicTransactionRetryPolicy::new()
.with_max_attempts(5)
.with_total_timeout(Duration::from_secs(60));
let transaction = db_client
.partitioned_dml_transaction()
.with_retry_policy(retry_policy)
.build()
.await?;The client will retry the entire transaction if it is aborted by Spanner. This policy can be used to customize whether a transaction should be retried or not. The default is to retry indefinitely until the transaction succeeds.
Sourcepub async fn build(self) -> Result<PartitionedDmlTransaction>
pub async fn build(self) -> Result<PartitionedDmlTransaction>
Builds the PartitionedDmlTransaction.
Auto Trait Implementations§
impl !RefUnwindSafe for PartitionedDmlTransactionBuilder
impl !UnwindSafe for PartitionedDmlTransactionBuilder
impl Freeze for PartitionedDmlTransactionBuilder
impl Send for PartitionedDmlTransactionBuilder
impl Sync for PartitionedDmlTransactionBuilder
impl Unpin for PartitionedDmlTransactionBuilder
impl UnsafeUnpin for PartitionedDmlTransactionBuilder
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> FutureExt for T
impl<T> FutureExt for T
Source§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
Source§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
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> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T in a tonic::Request