Skip to main content

BulkLoadDirectPacketWriteStats

Struct BulkLoadDirectPacketWriteStats 

Source
pub struct BulkLoadDirectPacketWriteStats {
Show 39 fields pub calls: u64, pub payload_bytes: u64, pub header_bytes: u64, pub max_payload_bytes: usize, pub final_calls: u64, pub final_payload_bytes: u64, pub final_header_bytes: u64, pub raw_stream_calls: u64, pub tls_stream_calls: u64, pub write_calls: u64, pub write_bytes: u64, pub max_write_bytes: usize, pub write_elapsed: Duration, pub max_write_elapsed: Duration, pub header_write_calls: u64, pub header_write_bytes: u64, pub header_max_write_bytes: usize, pub header_write_elapsed: Duration, pub header_max_write_elapsed: Duration, pub header_partial_writes: u64, pub payload_write_calls: u64, pub payload_write_bytes: u64, pub payload_max_write_bytes: usize, pub payload_write_elapsed: Duration, pub payload_max_write_elapsed: Duration, pub payload_partial_writes: u64, pub poll_write_polls: u64, pub poll_write_pending_count: u64, pub poll_write_pending_elapsed: Duration, pub poll_write_max_pending_elapsed: Duration, pub poll_write_ready_count: u64, pub poll_write_ready_elapsed: Duration, pub poll_write_max_ready_elapsed: Duration, pub flush_calls: u64, pub flush_elapsed: Duration, pub max_flush_elapsed: Duration, pub flush_pending_count: u64, pub flush_pending_elapsed: Duration, pub flush_max_pending_elapsed: Duration,
}
Available on crate feature bulk-load-profile only.
Expand description

Detailed timing statistics for an experimental raw-bulk direct packet writer.

These counters are intended to compare an experimental bulk-only packet writer against the framed sink path. They remain zero when the framed path is used.

Fields§

§calls: u64

Number of TDS packets passed to the direct packet writer.

§payload_bytes: u64

Payload bytes passed to the direct packet writer, excluding headers.

§header_bytes: u64

Header bytes written by the direct packet writer.

§max_payload_bytes: usize

Largest payload passed to the direct packet writer.

§final_calls: u64

Number of final EndOfMessage packets passed to the direct packet writer.

§final_payload_bytes: u64

Payload bytes in final EndOfMessage packets.

§final_header_bytes: u64

Header bytes in final EndOfMessage packets.

§raw_stream_calls: u64

Direct packet writes observed on a raw, non-TLS stream.

§tls_stream_calls: u64

Direct packet writes observed on a TLS stream.

§write_calls: u64

Number of lower-level write calls issued by the direct packet writer.

§write_bytes: u64

Bytes accepted by lower-level writes, including headers and payloads.

§max_write_bytes: usize

Largest byte count accepted by a single lower-level write.

§write_elapsed: Duration

Time spent awaiting lower-level writes.

§max_write_elapsed: Duration

Slowest lower-level write.

§header_write_calls: u64

Number of lower-level writes used for packet headers.

§header_write_bytes: u64

Header bytes accepted by lower-level writes.

§header_max_write_bytes: usize

Largest header byte count accepted by a single lower-level write.

§header_write_elapsed: Duration

Time spent awaiting lower-level header writes.

§header_max_write_elapsed: Duration

Slowest lower-level header write.

§header_partial_writes: u64

Header writes that accepted fewer bytes than remained in the header slice.

§payload_write_calls: u64

Number of lower-level writes used for packet payloads.

§payload_write_bytes: u64

Payload bytes accepted by lower-level writes.

§payload_max_write_bytes: usize

Largest payload byte count accepted by a single lower-level write.

§payload_write_elapsed: Duration

Time spent awaiting lower-level payload writes.

§payload_max_write_elapsed: Duration

Slowest lower-level payload write.

§payload_partial_writes: u64

Payload writes that accepted fewer bytes than remained in the payload slice.

§poll_write_polls: u64

Number of low-level poll_write attempts.

§poll_write_pending_count: u64

Number of poll_write attempts that returned Pending.

§poll_write_pending_elapsed: Duration

Time spent waiting after poll_write returned Pending.

§poll_write_max_pending_elapsed: Duration

Slowest wait after a poll_write returned Pending.

§poll_write_ready_count: u64

Number of poll_write attempts that returned ready with a write result.

§poll_write_ready_elapsed: Duration

Time spent in ready poll_write attempts.

§poll_write_max_ready_elapsed: Duration

Slowest ready poll_write attempt.

§flush_calls: u64

Number of explicit direct packet writer flushes.

§flush_elapsed: Duration

Time spent awaiting explicit direct packet writer flushes.

§max_flush_elapsed: Duration

Slowest explicit direct packet writer flush.

§flush_pending_count: u64

Number of direct packet flush polls that returned Pending.

§flush_pending_elapsed: Duration

Time spent waiting after direct packet flush polls returned Pending.

§flush_max_pending_elapsed: Duration

Slowest wait after a direct packet flush poll returned Pending.

Trait Implementations§

Source§

impl Clone for BulkLoadDirectPacketWriteStats

Source§

fn clone(&self) -> BulkLoadDirectPacketWriteStats

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

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

Performs copy-assignment from source. Read more
Source§

impl Debug for BulkLoadDirectPacketWriteStats

Source§

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

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

impl Default for BulkLoadDirectPacketWriteStats

Source§

fn default() -> BulkLoadDirectPacketWriteStats

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

impl PartialEq for BulkLoadDirectPacketWriteStats

Source§

fn eq(&self, other: &BulkLoadDirectPacketWriteStats) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 (const: unstable) · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl Copy for BulkLoadDirectPacketWriteStats

Source§

impl Eq for BulkLoadDirectPacketWriteStats

Source§

impl StructuralPartialEq for BulkLoadDirectPacketWriteStats

Auto Trait Implementations§

Blanket Implementations§

Source§

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

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

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

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

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

Source§

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

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where 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> ToOwned for T
where T: Clone,

Source§

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 T
where U: Into<T>,

Source§

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 T
where U: TryFrom<T>,

Source§

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.
Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more