use reifydb_value::value::duration::Duration;
use serde::{Deserialize, Serialize};
use crate::fingerprint::{RequestFingerprint, StatementFingerprint};
#[derive(Default, Debug, Clone, Serialize, Deserialize)]
pub struct ExecutionMetrics {
pub fingerprint: RequestFingerprint,
pub statements: Vec<StatementMetrics>,
pub total: Duration,
pub compute: Duration,
}
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct StatementMetrics {
pub fingerprint: StatementFingerprint,
pub normalized_rql: String,
pub compile_duration: Duration,
pub execute_duration: Duration,
pub rows_affected: u64,
}