Struct tikv::coprocessor::ReqContext[][src]

pub struct ReqContext {
    pub tag: ReqTag,
    pub context: Context,
    pub ranges: Vec<KeyRange>,
    pub deadline: Deadline,
    pub peer: Option<String>,
    pub is_desc_scan: Option<bool>,
    pub txn_start_ts: TimeStamp,
    pub bypass_locks: TsSet,
    pub cache_match_version: Option<u64>,
    pub lower_bound: Vec<u8>,
    pub upper_bound: Vec<u8>,
    pub perf_level: PerfLevel,
}

Encapsulate the kvrpcpb::Context to provide some extra properties.

Fields

tag: ReqTag

The tag of the request

context: Context

The rpc context carried in the request

ranges: Vec<KeyRange>

Scan ranges of this request

deadline: Deadline

The deadline of the request

peer: Option<String>

The peer address of the request

is_desc_scan: Option<bool>

Whether the request is a descending scan (only applicable to DAG)

txn_start_ts: TimeStamp

The transaction start_ts of the request

bypass_locks: TsSet

The set of timestamps of locks that can be bypassed during the reading.

cache_match_version: Option<u64>

The data version to match. If it matches the underlying data version, request will not be processed (i.e. cache hit).

None means don’t try to hit the cache.

lower_bound: Vec<u8>

The lower bound key in ranges of the request

upper_bound: Vec<u8>

The upper bound key in ranges of the request

perf_level: PerfLevel

Perf level

Implementations

impl ReqContext[src]

pub fn new(
    tag: ReqTag,
    context: Context,
    ranges: Vec<KeyRange>,
    max_handle_duration: Duration,
    peer: Option<String>,
    is_desc_scan: Option<bool>,
    txn_start_ts: TimeStamp,
    cache_match_version: Option<u64>,
    perf_level: PerfLevel
) -> Self
[src]

pub fn build_task_id(&self) -> u64[src]

Trait Implementations

impl Clone for ReqContext[src]

impl Debug for ReqContext[src]

Auto Trait Implementations

impl RefUnwindSafe for ReqContext

impl Send for ReqContext

impl Sync for ReqContext

impl Unpin for ReqContext

impl UnwindSafe for ReqContext

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<V, W> ConvertFrom<W> for V where
    W: ConvertTo<V>, 
[src]

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]

impl<T> Pointable for T[src]

type Init = T

The type for initializers.

impl<T> Pointable for T[src]

type Init = T

The type for initializers.

impl<T> Same<T> for T[src]

type Output = T

Should always be Self

impl<T> Sealed<T> for T where
    T: ?Sized
[src]

impl<T> SendSyncUnwindSafe for T where
    T: Send + Sync + UnwindSafe + ?Sized
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<V, T> VZip<V> for T where
    V: MultiLane<T>, 
[src]