From a60fd49ded42ce09d2c5f2fc72ad8a4bb32d11aa Mon Sep 17 00:00:00 2001 From: Chris Denton Date: Mon, 21 Apr 2025 12:08:55 +0000 Subject: [PATCH] build_helper: Exponentially increase rm delay --- src/build_helper/src/fs/mod.rs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/build_helper/src/fs/mod.rs b/src/build_helper/src/fs/mod.rs index 123df76e6a2e9..c90a010b7022a 100644 --- a/src/build_helper/src/fs/mod.rs +++ b/src/build_helper/src/fs/mod.rs @@ -52,7 +52,7 @@ pub fn recursive_remove>(path: P) -> io::Result<()> { let is_dir_like = fs::Metadata::is_dir; const MAX_RETRIES: usize = 5; - const RETRY_DELAY_MS: u64 = 100; + const RETRY_MIN_DELAY_MS: u64 = 100; let try_remove = || { if is_dir_like(&metadata) { @@ -72,7 +72,7 @@ pub fn recursive_remove>(path: P) -> io::Result<()> { Ok(()) => return Ok(()), Err(e) if e.kind() == io::ErrorKind::NotFound => return Ok(()), Err(_) if attempt < MAX_RETRIES - 1 => { - std::thread::sleep(std::time::Duration::from_millis(RETRY_DELAY_MS)); + std::thread::sleep(std::time::Duration::from_millis(RETRY_MIN_DELAY_MS << attempt)); continue; } Err(e) => return Err(e),