Skip to main content

ExecutionMetadata

Struct ExecutionMetadata 

Source
pub struct ExecutionMetadata {
Show 16 fields pub engine: Option<String>, pub recovery_events: Option<Vec<RecoveryEvent>>, pub rows_processed: usize, pub bytes_consumed: Option<u64>, pub columns_detected: usize, pub scan_time_ms: u128, pub throughput_rows_sec: Option<f64>, pub memory_peak_mb: Option<f64>, pub error_count: usize, pub ragged_row_count: usize, pub unterminated_quote: Option<bool>, pub source_exhausted: bool, pub truncation_reason: Option<TruncationReason>, pub sampling_applied: bool, pub sampling_ratio: Option<f64>, pub sampled_row_ranges: Option<Vec<[u64; 2]>>,
}
Expand description

Metadata about the profiling execution.

Fields§

§engine: Option<String>

Engine or parser that actually produced the report.

§recovery_events: Option<Vec<RecoveryEvent>>

Failed attempts and their retries. None means history was not recorded (e.g. a legacy report); Some([]) means no recovery occurred.

§rows_processed: usize

Number of rows actually processed or analyzed.

§bytes_consumed: Option<u64>

Number of bytes consumed from the source, if known.

§columns_detected: usize

Number of columns detected in the data.

§scan_time_ms: u128

Total execution time in milliseconds.

§throughput_rows_sec: Option<f64>

Throughput in rows per second, auto-calculated when possible.

§memory_peak_mb: Option<f64>

Peak process memory usage (resident set size) in megabytes observed during profiling, sampled at chunk/batch boundaries. Absent when the platform provided no reading or the input path does not track memory.

§error_count: usize

Number of errors encountered during profiling.

§ragged_row_count: usize

Number of data rows whose field count differed from the header’s.

These rows were recovered — extra trailing fields dropped, missing trailing fields padded to null — so profiling continued, but each one is a structural violation in the source. A nonzero value means the file did not parse cleanly even though a report was produced. Additive field: legacy documents without it deserialize as 0.

§unterminated_quote: Option<bool>

Whether a CSV source ended inside a quoted field.

A quote that is never closed swallows every following row into the last field of one record, and the parser accepts it. true means the last record read may hold several source rows. Absent where it was not checked: non-CSV input, a scan that stopped before the end of the source, and reports written before 0.12.

§source_exhausted: bool

Whether the entire source was consumed.

§truncation_reason: Option<TruncationReason>

If the source was not exhausted, why processing stopped.

§sampling_applied: bool

Whether sampling was applied.

§sampling_ratio: Option<f64>

Ratio of rows analyzed to total rows when sampling is meaningful.

§sampled_row_ranges: Option<Vec<[u64; 2]>>

Exact zero-based, half-open source row ranges selected for analysis, in source order. Absent when the input path does not record a selection; an empty list means a recorded selection of zero rows.

Implementations§

Source§

impl ExecutionMetadata

Source

pub fn new( rows_processed: usize, columns_detected: usize, scan_time_ms: u128, ) -> Self

Create new execution metadata with throughput calculated automatically.

Source

pub fn with_engine(self, engine: impl Into<String>) -> Self

Record the engine or parser that actually produced the report.

Source

pub fn with_sampling(self, ratio: f64) -> Self

Set sampling information.

Source

pub fn with_source_exhausted(self, exhausted: bool) -> Self

Explicitly set whether the source was fully consumed.

Source

pub fn with_truncation(self, reason: TruncationReason) -> Self

Mark the execution as truncated.

Source

pub fn with_bytes_consumed(self, bytes: u64) -> Self

Set the number of bytes consumed from the source.

Source

pub fn with_error_count(self, count: usize) -> Self

Set the error count.

Source

pub fn with_ragged_row_count(self, count: usize) -> Self

Set the count of ragged rows (field count != header field count).

Source

pub fn with_unterminated_quote(self, ended_inside_quotes: bool) -> Self

Record whether a checked CSV source ended inside a quoted field.

Source

pub fn with_memory_peak_mb(self, mb: f64) -> Self

Set peak memory usage.

Trait Implementations§

Source§

impl Clone for ExecutionMetadata

Source§

fn clone(&self) -> Self

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 ExecutionMetadata

Source§

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

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

impl<'de> Deserialize<'de> for ExecutionMetadata

Source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
Source§

impl JsonSchema for ExecutionMetadata

Source§

fn schema_name() -> Cow<'static, str>

The name of the generated JSON Schema. Read more
Source§

fn schema_id() -> Cow<'static, str>

Returns a string that uniquely identifies the schema produced by this type. Read more
Source§

fn json_schema(generator: &mut SchemaGenerator) -> Schema

Generates a JSON Schema for this type. Read more
Source§

fn inline_schema() -> bool

Whether JSON Schemas generated for this type should be included directly in parent schemas, rather than being re-used where possible using the $ref keyword. Read more
Source§

impl Serialize for ExecutionMetadata

Source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where __S: Serializer,

Serialize this value into the given Serde serializer. Read more

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<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
where ST: ?Sized, DT: ?Sized,

Source§

impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
where ST: ?Sized, DT: ?Sized,

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> DeserializeOwned for T
where T: for<'de> Deserialize<'de>,

Source§

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

Source§

fn __clone_box(&self, _: Private) -> *mut ()

Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

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> Read<Exclusive, BecauseExclusive> for T
where T: ?Sized,

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 = !

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

fn try_from(value: U) -> Result<T, !>

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<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V