Index: tools/perf/benchmarks/system_health_smoke_test.py |
diff --git a/tools/perf/benchmarks/system_health_smoke_test.py b/tools/perf/benchmarks/system_health_smoke_test.py |
index 5e02ad370da7bca82a6c13a79e15d7d974c1b61f..062497ce17555e4d6674fd9cdc24b0d8dc00a79a 100644 |
--- a/tools/perf/benchmarks/system_health_smoke_test.py |
+++ b/tools/perf/benchmarks/system_health_smoke_test.py |
@@ -153,8 +153,14 @@ def load_tests(loader, standard_tests, pattern): |
# Since none of our system health benchmarks creates stories based on |
# command line options, it should be ok to pass options=None to |
# CreateStorySet. |
- for story_to_smoke_test in ( |
- benchmark_class().CreateStorySet(options=None).stories): |
+ stories_set = benchmark_class().CreateStorySet(options=None) |
+ |
+ # Prefetch WPR archive needed by the stories set to avoid race condition |
+ # when feching them when tests are run in parallel. |
+ # See crbug.com/700426 for more details. |
+ stories_set.wpr_archive_info.DownloadArchivesIfNeeded() |
+ |
+ for story_to_smoke_test in stories_set.stories: |
suite.addTest( |
_GenerateSmokeTestCase(benchmark_class, story_to_smoke_test)) |