Struct resolved_ts::Resolver [−][src]
Fields
region_id: u64
locks_by_key: HashMap<Arc<[u8]>, TimeStamp>
lock_ts_heap: BTreeMap<TimeStamp, HashSet<Arc<[u8]>>>
resolved_ts: TimeStamp
tracked_index: u64
read_progress: Option<Arc<RegionReadProgress>>
min_ts: TimeStamp
Implementations
impl Resolver
[src][−]
pub fn new(region_id: u64) -> Resolver
[src]
pub fn with_read_progress(
region_id: u64,
read_progress: Option<Arc<RegionReadProgress>>
) -> Resolver
[src]
region_id: u64,
read_progress: Option<Arc<RegionReadProgress>>
) -> Resolver
pub fn resolved_ts(&self) -> TimeStamp
[src]
pub fn locks(&self) -> &BTreeMap<TimeStamp, HashSet<Arc<[u8]>>>
[src]
pub fn update_tracked_index(&mut self, index: u64)
[src]
pub fn track_lock(
&mut self,
start_ts: TimeStamp,
key: Vec<u8>,
index: Option<u64>
)
[src]
&mut self,
start_ts: TimeStamp,
key: Vec<u8>,
index: Option<u64>
)
pub fn untrack_lock(&mut self, key: &[u8], index: Option<u64>)
[src]
pub fn resolve(&mut self, min_ts: TimeStamp) -> TimeStamp
[src][−]
Try to advance resolved ts.
min_ts
advances the resolver even if there is no write.
Return None means the resolver is not initialized.
Auto Trait Implementations
impl RefUnwindSafe for Resolver
impl Send for Resolver
impl Sync for Resolver
impl Unpin for Resolver
impl UnwindSafe for Resolver
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src][+]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src][+]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src][+]
T: ?Sized,
impl<V, W> ConvertFrom<W> for V where
W: ConvertTo<V>,
[src][+]
W: ConvertTo<V>,
impl<T> From<T> for T
[src][+]
impl<T> Instrument for T
[src][+]
impl<T, U> Into<U> for T where
U: From<T>,
[src][+]
U: From<T>,
impl<T> Pointable for T
[src][+]
impl<T> Pointable for T
[src][+]
impl<T> Same<T> for T
[src]
type Output = T
Should always be Self
impl<T> Sealed<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> SendSyncUnwindSafe for T where
T: Send + Sync + UnwindSafe + ?Sized,
[src]
T: Send + Sync + UnwindSafe + ?Sized,
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src][+]
U: Into<T>,
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src][+]
U: TryFrom<T>,
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
[src][+]
V: MultiLane<T>,