Trait tikv::storage::txn::commands::WriteCommand [−][src]
Commands that need to modify the database during execution will implement this trait.
Required methods
fn process_write(
self,
snapshot: S,
context: WriteContext<'_, L>
) -> Result<WriteResult>
[src]
self,
snapshot: S,
context: WriteContext<'_, L>
) -> Result<WriteResult>
Implementors
impl<S: Snapshot, L: LockManager> WriteCommand<S, L> for AcquirePessimisticLock
[src]
fn process_write(
self,
snapshot: S,
context: WriteContext<'_, L>
) -> Result<WriteResult>
[src]
self,
snapshot: S,
context: WriteContext<'_, L>
) -> Result<WriteResult>
impl<S: Snapshot, L: LockManager> WriteCommand<S, L> for RawAtomicStore
[src]
fn process_write(self, _: S, _: WriteContext<'_, L>) -> Result<WriteResult>
[src]
impl<S: Snapshot, L: LockManager> WriteCommand<S, L> for CheckSecondaryLocks
[src]
fn process_write(
self,
snapshot: S,
context: WriteContext<'_, L>
) -> Result<WriteResult>
[src]
self,
snapshot: S,
context: WriteContext<'_, L>
) -> Result<WriteResult>
impl<S: Snapshot, L: LockManager> WriteCommand<S, L> for CheckTxnStatus
[src]
fn process_write(
self,
snapshot: S,
context: WriteContext<'_, L>
) -> Result<WriteResult>
[src]
self,
snapshot: S,
context: WriteContext<'_, L>
) -> Result<WriteResult>
checks whether a transaction has expired its primary lock’s TTL, rollback the
transaction if expired, or update the transaction’s min_commit_ts according to the metadata
in the primary lock.
When transaction T1 meets T2’s lock, it may invoke this on T2’s primary key. In this
situation, self.start_ts
is T2’s start_ts
, caller_start_ts
is T1’s start_ts
, and
the current_ts
is literally the timestamp when this function is invoked; it may not be
accurate.
impl<S: Snapshot, L: LockManager> WriteCommand<S, L> for Cleanup
[src]
fn process_write(
self,
snapshot: S,
context: WriteContext<'_, L>
) -> Result<WriteResult>
[src]
self,
snapshot: S,
context: WriteContext<'_, L>
) -> Result<WriteResult>
impl<S: Snapshot, L: LockManager> WriteCommand<S, L> for Commit
[src]
fn process_write(
self,
snapshot: S,
context: WriteContext<'_, L>
) -> Result<WriteResult>
[src]
self,
snapshot: S,
context: WriteContext<'_, L>
) -> Result<WriteResult>
impl<S: Snapshot, L: LockManager> WriteCommand<S, L> for RawCompareAndSwap
[src]
fn process_write(
self,
snapshot: S,
_: WriteContext<'_, L>
) -> Result<WriteResult>
[src]
self,
snapshot: S,
_: WriteContext<'_, L>
) -> Result<WriteResult>
impl<S: Snapshot, L: LockManager> WriteCommand<S, L> for Pause
[src]
fn process_write(
self,
_snapshot: S,
_context: WriteContext<'_, L>
) -> Result<WriteResult>
[src]
self,
_snapshot: S,
_context: WriteContext<'_, L>
) -> Result<WriteResult>
impl<S: Snapshot, L: LockManager> WriteCommand<S, L> for PessimisticRollback
[src]
fn process_write(
self,
snapshot: S,
context: WriteContext<'_, L>
) -> Result<WriteResult>
[src]
self,
snapshot: S,
context: WriteContext<'_, L>
) -> Result<WriteResult>
Delete any pessimistic lock with small for_update_ts belongs to this transaction.
impl<S: Snapshot, L: LockManager> WriteCommand<S, L> for Prewrite
[src]
fn process_write(
self,
snapshot: S,
context: WriteContext<'_, L>
) -> Result<WriteResult>
[src]
self,
snapshot: S,
context: WriteContext<'_, L>
) -> Result<WriteResult>
impl<S: Snapshot, L: LockManager> WriteCommand<S, L> for PrewritePessimistic
[src]
fn process_write(
self,
snapshot: S,
context: WriteContext<'_, L>
) -> Result<WriteResult>
[src]
self,
snapshot: S,
context: WriteContext<'_, L>
) -> Result<WriteResult>
impl<S: Snapshot, L: LockManager> WriteCommand<S, L> for ResolveLock
[src]
fn process_write(
self,
snapshot: S,
context: WriteContext<'_, L>
) -> Result<WriteResult>
[src]
self,
snapshot: S,
context: WriteContext<'_, L>
) -> Result<WriteResult>
impl<S: Snapshot, L: LockManager> WriteCommand<S, L> for ResolveLockLite
[src]
fn process_write(
self,
snapshot: S,
context: WriteContext<'_, L>
) -> Result<WriteResult>
[src]
self,
snapshot: S,
context: WriteContext<'_, L>
) -> Result<WriteResult>
impl<S: Snapshot, L: LockManager> WriteCommand<S, L> for Rollback
[src]
fn process_write(
self,
snapshot: S,
context: WriteContext<'_, L>
) -> Result<WriteResult>
[src]
self,
snapshot: S,
context: WriteContext<'_, L>
) -> Result<WriteResult>
impl<S: Snapshot, L: LockManager> WriteCommand<S, L> for TxnHeartBeat
[src]
fn process_write(
self,
snapshot: S,
context: WriteContext<'_, L>
) -> Result<WriteResult>
[src]
self,
snapshot: S,
context: WriteContext<'_, L>
) -> Result<WriteResult>