Skip to content

Commit 638d3aa

Browse files
authored
[sled-agent-config-reconciler] Flesh out internal disks task (#8103)
Nothing too fancy here. A lot of the bulk of the code is around funneling results out through watch channels. The only new behavior beyond what `sled-storage` does is that this will periodically retry calling `Disk::new()` on internal disks for which `Disk::new()` previously failed. I'm very open to feedback here - maybe this is wrong because the most common errors are fatal anyway (e.g., disk isn't formatted correctly)? Maybe it's okay but should be less frequent? Maybe it's okay but we should check for specific kinds of errors we believe to be fatal and not retry in those cases?
1 parent 720966b commit 638d3aa

File tree

5 files changed

+793
-57
lines changed

5 files changed

+793
-57
lines changed

sled-agent/config-reconciler/src/handle.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -243,7 +243,7 @@ impl ConfigReconcilerHandle {
243243
}
244244

245245
/// Wait for the internal disks task to start managing the boot disk.
246-
pub async fn wait_for_boot_disk(&mut self) -> DiskIdentity {
246+
pub async fn wait_for_boot_disk(&mut self) -> Arc<DiskIdentity> {
247247
self.internal_disks_rx.wait_for_boot_disk().await
248248
}
249249

0 commit comments

Comments
 (0)