pub struct ReadSet {
pub tables: HashSet<String>,
pub rows: HashMap<String, HashSet<Uuid>>,
pub filter_columns: HashMap<String, HashSet<String>>,
pub mode: TrackingMode,
}Expand description
Read set tracking tables and rows read during query execution.
Fields§
§tables: HashSet<String>Tables accessed.
rows: HashMap<String, HashSet<Uuid>>Specific rows read per table.
filter_columns: HashMap<String, HashSet<String>>Columns used in filters.
mode: TrackingModeTracking mode used.
Implementations§
Source§impl ReadSet
impl ReadSet
Sourcepub fn table_level() -> Self
pub fn table_level() -> Self
Create a read set with table-level tracking.
Sourcepub fn add_filter_column(
&mut self,
table: impl Into<String>,
column: impl Into<String>,
)
pub fn add_filter_column( &mut self, table: impl Into<String>, column: impl Into<String>, )
Add a filter column.
Sourcepub fn includes_table(&self, table: &str) -> bool
pub fn includes_table(&self, table: &str) -> bool
Check if this read set includes a specific table.
Sourcepub fn includes_row(&self, table: &str, row_id: Uuid) -> bool
pub fn includes_row(&self, table: &str, row_id: Uuid) -> bool
Check if this read set includes a specific row.
Sourcepub fn memory_bytes(&self) -> usize
pub fn memory_bytes(&self) -> usize
Estimate memory usage in bytes.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for ReadSet
impl RefUnwindSafe for ReadSet
impl Send for ReadSet
impl Sync for ReadSet
impl Unpin for ReadSet
impl UnwindSafe for ReadSet
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> 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