diff --git a/src/datasets/model.rs b/src/datasets/model.rs index b375454..0b8d648 100644 --- a/src/datasets/model.rs +++ b/src/datasets/model.rs @@ -879,13 +879,16 @@ pub struct QueryStatus { } /// The cache status of the query. -#[derive(IntoPrimitive, TryFromPrimitive, Clone, Copy, Debug, PartialEq, Eq)] +#[derive(IntoPrimitive, TryFromPrimitive, Clone, Copy, Debug, PartialEq, Eq, Default)] #[repr(u8)] #[non_exhaustive] pub enum CacheStatus { Miss = 1, Materialized = 2, // Filtered rows Results = 4, // Aggregated and grouped records + WalCached = 9, // WAL is cached + #[default] + Unknown, } impl Serialize for CacheStatus { @@ -903,7 +906,7 @@ impl<'de> Deserialize<'de> for CacheStatus { D: Deserializer<'de>, { let value: u8 = Deserialize::deserialize(deserializer)?; - Self::try_from(value).map_err(serde::de::Error::custom) + Ok(Self::try_from(value).unwrap_or_default()) } }