From af6bbacc8c26698d9e13b08201b7c1e49df914c0 Mon Sep 17 00:00:00 2001 From: Weny Xu Date: Fri, 7 Nov 2025 17:50:09 +0800 Subject: [PATCH] fix: add serde defaults for `MetasrvNodeInfo` (#7204) * fix: add serde defaults for `MetasrvNodeInfo` Signed-off-by: WenyXu * chore: fmt Signed-off-by: WenyXu --------- Signed-off-by: WenyXu --- src/meta-srv/src/metasrv.rs | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) diff --git a/src/meta-srv/src/metasrv.rs b/src/meta-srv/src/metasrv.rs index aeaea1337b..ba1798c386 100644 --- a/src/meta-srv/src/metasrv.rs +++ b/src/meta-srv/src/metasrv.rs @@ -375,12 +375,14 @@ pub struct MetasrvNodeInfo { // The node total cpu millicores #[serde(default)] pub total_cpu_millicores: i64, - #[serde(default)] // The node total memory bytes + #[serde(default)] pub total_memory_bytes: i64, /// The node build cpu usage millicores + #[serde(default)] pub cpu_usage_millicores: i64, /// The node build memory usage bytes + #[serde(default)] pub memory_usage_bytes: i64, // The node hostname #[serde(default)] @@ -858,3 +860,18 @@ impl Metasrv { } } } + +#[cfg(test)] +mod tests { + use crate::metasrv::MetasrvNodeInfo; + + #[test] + fn test_deserialize_metasrv_node_info() { + let str = r#"{"addr":"127.0.0.1:4002","version":"0.1.0","git_commit":"1234567890","start_time_ms":1715145600}"#; + let node_info: MetasrvNodeInfo = serde_json::from_str(str).unwrap(); + assert_eq!(node_info.addr, "127.0.0.1:4002"); + assert_eq!(node_info.version, "0.1.0"); + assert_eq!(node_info.git_commit, "1234567890"); + assert_eq!(node_info.start_time_ms, 1715145600); + } +}