From 9ecb500cbfa71c7cee1206e36a96a47e6e4692cf Mon Sep 17 00:00:00 2001 From: Zhengchao An Date: Wed, 9 Sep 2026 01:35:43 +0800 Subject: [PATCH] test(odm): wait for pull counters before status assertions (#7533) --- .../e2e_test/src/on_demand_migration/interaction_test.rs | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/crates/e2e_test/src/on_demand_migration/interaction_test.rs b/crates/e2e_test/src/on_demand_migration/interaction_test.rs index 465888b44..f22c5e3b9 100644 --- a/crates/e2e_test/src/on_demand_migration/interaction_test.rs +++ b/crates/e2e_test/src/on_demand_migration/interaction_test.rs @@ -1137,7 +1137,12 @@ async fn test_odm_admin_config_is_redacted_and_status_counts_match_the_source() let miss = env.raw_get(bucket, miss_key).await?; assert_eq!(miss.status, 404, "{}", String::from_utf8_lossy(&miss.body)); } - assert!(env.wait_local_listed(bucket, hit_key, SETTLE).await?); + let (listed, _, _) = tokio::try_join!( + env.wait_local_listed(bucket, hit_key, SETTLE), + env.wait_for_status_counter(bucket, "/counters/pulled_objects_total/inline", 1, SETTLE), + env.wait_for_status_counter(bucket, "/counters/pulled_bytes_total", body.len() as u64, SETTLE), + )?; + assert!(listed); let status = env.status_json(bucket).await?; assert_eq!(status.pointer("/configured").and_then(Value::as_bool), Some(true), "{status}");