pub struct ScanPolicy {
    pub base_policy: BasePolicy,
    pub scan_percent: u8,
    pub max_concurrent_nodes: usize,
    pub record_queue_size: usize,
    pub fail_on_cluster_change: bool,
    pub socket_timeout: u32,
    pub filter_expression: Option<FilterExpression>,
}
Expand description

ScanPolicy encapsulates optional parameters used in scan operations.

Fields§

§base_policy: BasePolicy

Base policy instance

§scan_percent: u8

Percent of data to scan. Valid integer range is 1 to 100. Default is 100. This is deprected and won’t be sent to the server.

§max_concurrent_nodes: usize

Maximum number of concurrent requests to server nodes at any point in time. If there are 16 nodes in the cluster and max_concurrent_nodes is 8, then scan requests will be made to 8 nodes in parallel. When a scan completes, a new scan request will be issued until all 16 nodes have been scanned. Default (0) is to issue requests to all server nodes in parallel.

§record_queue_size: usize

Number of records to place in queue before blocking. Records received from multiple server nodes will be placed in a queue. A separate thread consumes these records in parallel. If the queue is full, the producer threads will block until records are consumed.

§fail_on_cluster_change: bool

Terminate scan if cluster is in fluctuating state. This is deprected and won’t be sent to the server.

§socket_timeout: u32

Maximum time in milliseconds to wait when polling socket for availability prior to performing an operation on the socket on the server side. Zero means there is no socket timeout. Default: 10,000 ms.

§filter_expression: Option<FilterExpression>

Optional Filter Expression

Implementations§

source§

impl ScanPolicy

source

pub fn new() -> Self

Create a new scan policy instance with default parameters.

source

pub const fn filter_expression(&self) -> &Option<FilterExpression>

Get the current Filter Expression

Trait Implementations§

source§

impl Clone for ScanPolicy

source§

fn clone(&self) -> ScanPolicy

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for ScanPolicy

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Default for ScanPolicy

source§

fn default() -> Self

Returns the “default value” for a type. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for Twhere T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for Twhere T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for Twhere T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for Twhere U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T> Policy for Twhere T: PolicyLike,

source§

fn priority(&self) -> &Priority

Transaction priority.
source§

fn consistency_level(&self) -> &ConsistencyLevel

How replicas should be consulted in read operations to provide the desired consistency guarantee.
source§

fn deadline(&self) -> Option<Instant>

source§

fn timeout(&self) -> Option<Duration>

Total transaction timeout for both client and server. The timeout is tracked on the client and also sent to the server along with the transaction in the wire protocol. The client will most likely timeout first, but the server has the capability to timeout the transaction as well. Read more
source§

fn max_retries(&self) -> Option<usize>

Maximum number of retries before aborting the current transaction. A retry may be attempted when there is a network error. If max_retries is exceeded, the abort will occur even if the timeout has not yet been exceeded.
source§

fn sleep_between_retries(&self) -> Option<Duration>

Time to sleep between retries. Set to zero to skip sleep. Default: 500ms.
source§

impl<T> Same<T> for T

§

type Output = T

Should always be Self
source§

impl<T> ToOwned for Twhere T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T, U> TryFrom<U> for Twhere U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for Twhere U: TryFrom<T>,

§

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

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
§

impl<V, T> VZip<V> for Twhere V: MultiLane<T>,

§

fn vzip(self) -> V