pub enum WriteKey {
Row {
table_id: u64,
row_id: u64,
},
Unique {
table_id: u64,
index_id: u16,
key_hash: u64,
},
Table {
table_id: u64,
},
}Expand description
A write-set key broad enough to detect all write–write conflicts under snapshot isolation (spec §8.3, review fix #13).
Variants§
Row
Row-version key for updates/deletes of existing rows.
Unique
Unique/PK key for inserts/updates touching a UNIQUE column.
Table
Table-scope key for TRUNCATE/DROP/ALTER and any txn writing that table.
Trait Implementations§
impl Eq for WriteKey
Auto Trait Implementations§
impl Freeze for WriteKey
impl RefUnwindSafe for WriteKey
impl Send for WriteKey
impl Sync for WriteKey
impl Unpin for WriteKey
impl UnsafeUnpin for WriteKey
impl UnwindSafe for WriteKey
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> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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