diff --git a/nexus/db-model/src/inventory.rs b/nexus/db-model/src/inventory.rs index fff176a15f..d2b330031f 100644 --- a/nexus/db-model/src/inventory.rs +++ b/nexus/db-model/src/inventory.rs @@ -1744,7 +1744,7 @@ impl TryFrom type Error = anyhow::Error; fn try_from(value: InvClickhouseKeeperMembership) -> anyhow::Result { - let err_msg = "clickhouse keeper ID > 2^63"; + let err_msg = "clickhouse keeper ID is negative"; let mut raft_config = BTreeSet::new(); for id in value.raft_config { raft_config.insert(KeeperId(id.try_into().context(err_msg)?)); @@ -1756,7 +1756,7 @@ impl TryFrom leader_committed_log_index: value .leader_committed_log_index .try_into() - .context("log index > 2^63")?, + .context("log index is negative")?, raft_config, }) } diff --git a/nexus/inventory/src/collector.rs b/nexus/inventory/src/collector.rs index 9cb0a80024..a42b9073b7 100644 --- a/nexus/inventory/src/collector.rs +++ b/nexus/inventory/src/collector.rs @@ -26,8 +26,8 @@ const SLED_AGENT_TIMEOUT: Duration = Duration::from_secs(60); /// Collect all inventory data from an Oxide system pub struct Collector<'a> { log: slog::Logger, - mgs_clients: Vec, - keeper_admin_clients: Vec, + mgs_clients: Option>, + keeper_admin_clients: Option>, sled_agent_lister: &'a (dyn SledAgentEnumerator + Send + Sync), in_progress: CollectionBuilder, } @@ -42,8 +42,8 @@ impl<'a> Collector<'a> { ) -> Self { Collector { log, - mgs_clients, - keeper_admin_clients, + mgs_clients: Some(mgs_clients), + keeper_admin_clients: Some(keeper_admin_clients), sled_agent_lister, in_progress: CollectionBuilder::new(creator), } @@ -77,7 +77,7 @@ impl<'a> Collector<'a> { /// Collect inventory from all MGS instances async fn collect_all_mgs(&mut self) { - let clients = std::mem::take(&mut self.mgs_clients); + let clients = self.mgs_clients.take().unwrap(); for client in &clients { self.collect_one_mgs(&client).await; } @@ -375,7 +375,7 @@ impl<'a> Collector<'a> { /// Collect inventory from about keepers from all `ClickhouseAdminKeeper` /// clients async fn collect_all_keepers(&mut self) { - let clients = std::mem::take(&mut self.keeper_admin_clients); + let clients = self.keeper_admin_clients.take().unwrap(); for client in &clients { self.collect_one_keeper(&client).await; }