-
Notifications
You must be signed in to change notification settings - Fork 11
DAG-1986 Distribute tests without historic runtime data evenly between subsuites #46
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
let origin_suite = multiversion_name.unwrap_or(¶ms.suite_name); | ||
let test_list = self.get_test_list(params, multiversion_name)?; | ||
let required_stats_count = percent_of_tests(test_list.len(), REQUIRED_STATS_THRESHOLD); | ||
if task_stats.test_map.len() < required_stats_count { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Since we are distributing tests without historic runtime data after we have processed test with historic data, we don't need this special logic anymore.
running_tests[min_idx].push(test.clone()); | ||
} | ||
|
||
for (i, test) in left_tests.iter().enumerate() { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Should we start at the running_tests
with the minimal sum of run time when we start processing left_tests
?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Added.
src/task_types/resmoke_tasks.rs
Outdated
} | ||
|
||
for (i, test) in left_tests.iter().enumerate() { | ||
running_tests[i % max_tasks].push(test.clone()); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
For the index, something like (index_minimal_sum_run_time_before_this_loop + i) % max_tasks
.
evergreen merge |
Follow-up change after DAG-1967.
Evergreen patch: https://spruce.mongodb.com/version/62ff60ea2fbabe6d0b390036/task-duration?duration=DESC
Evergreen patch nightly: https://spruce.mongodb.com/version/62ff60f1e3c33116292f43ea/task-duration?duration=DESC