mozilla / bugbug

Platform for Machine Learning projects on Software Engineering
Mozilla Public License 2.0
493 stars 309 forks source link

'./mach try auto' for ESR 115 repository causes decision task timeout due to bugbug timeout #3694

Open Archaeopteryx opened 11 months ago

Archaeopteryx commented 11 months ago

'./mach try auto' had been executed for the ESR 115 tree by a developer twice and it failed each time due to a bugbug timeout during the run of the decision task. The issue was reproducible with a Try push by me

From the log:

[task 2023-10-06T12:58:38.126Z] https://bugbug.herokuapp.com:443 "GET /push/try/afbc66f1a829ae8532597dc89eee4823d698b248/schedules HTTP/1.1" 202 16
[task 2023-10-06T12:58:48.168Z] https://bugbug.herokuapp.com:443 "GET /push/try/afbc66f1a829ae8532597dc89eee4823d698b248/schedules HTTP/1.1" 202 16
[task 2023-10-06T12:58:58.217Z] https://bugbug.herokuapp.com:443 "GET /push/try/afbc66f1a829ae8532597dc89eee4823d698b248/schedules HTTP/1.1" 202 16
[task 2023-10-06T12:59:08.224Z] PERFHERDER_DATA: {"framework": {"name": "build_metrics"}, "suites": [{"name": "bugbug_push_schedules_time", "value": 723.660550172, "lowerIsBetter": true, "shouldAlert": false, "subtests": []}, {"name": "bugbug_push_schedules_retries", "value": 72, "lowerIsBetter": true, "shouldAlert": false, "subtests": []}]}
[task 2023-10-06T12:59:08.224Z] PERFHERDER_DATA: {"framework": {"name": "build_metrics"}, "suites": [{"name": "bugbug_push_schedules_time", "value": 723.435763941, "lowerIsBetter": true, "shouldAlert": false, "subtests": []}, {"name": "bugbug_push_schedules_retries", "value": 72, "lowerIsBetter": true, "shouldAlert": false, "subtests": []}]}
[task 2023-10-06T12:59:08.224Z] Traceback (most recent call last):
[task 2023-10-06T12:59:08.224Z]   File "/builds/worker/checkouts/gecko/taskcluster/mach_commands.py", line 237, in taskgraph_decision
[task 2023-10-06T12:59:08.224Z]     ret = taskgraph_commands["decision"].func(options)
[task 2023-10-06T12:59:08.224Z]   File "/builds/worker/checkouts/gecko/taskcluster/gecko_taskgraph/main.py", line 635, in decision
[task 2023-10-06T12:59:08.224Z]     taskgraph_decision(options)
[task 2023-10-06T12:59:08.224Z]   File "/builds/worker/checkouts/gecko/taskcluster/gecko_taskgraph/decision.py", line 268, in taskgraph_decision
[task 2023-10-06T12:59:08.224Z]     write_artifact("task-graph.json", tgg.morphed_task_graph.to_json())
[task 2023-10-06T12:59:08.224Z]   File "/builds/worker/checkouts/gecko/third_party/python/taskcluster_taskgraph/taskgraph/generator.py", line 219, in morphed_task_graph
[task 2023-10-06T12:59:08.224Z]     return self._run_until("morphed_task_graph")
[task 2023-10-06T12:59:08.224Z]   File "/builds/worker/checkouts/gecko/third_party/python/taskcluster_taskgraph/taskgraph/generator.py", line 423, in _run_until
[task 2023-10-06T12:59:08.224Z]     k, v = next(self._run)
[task 2023-10-06T12:59:08.224Z]   File "/builds/worker/checkouts/gecko/third_party/python/taskcluster_taskgraph/taskgraph/generator.py", line 397, in _run
[task 2023-10-06T12:59:08.224Z]     optimized_task_graph, label_to_taskid = optimize_task_graph(
[task 2023-10-06T12:59:08.224Z]   File "/builds/worker/checkouts/gecko/third_party/python/taskcluster_taskgraph/taskgraph/optimize/base.py", line 65, in optimize_task_graph
[task 2023-10-06T12:59:08.224Z]     removed_tasks = remove_tasks(
[task 2023-10-06T12:59:08.224Z]   File "/builds/worker/checkouts/gecko/third_party/python/taskcluster_taskgraph/taskgraph/optimize/base.py", line 217, in remove_tasks
[task 2023-10-06T12:59:08.224Z]     if opt.should_remove_task(task, params, arg):
[task 2023-10-06T12:59:08.224Z]   File "/builds/worker/checkouts/gecko/third_party/python/taskcluster_taskgraph/taskgraph/optimize/base.py", line 471, in should_remove_task
[task 2023-10-06T12:59:08.224Z]     return self.reduce(results)
[task 2023-10-06T12:59:08.224Z]   File "/builds/worker/checkouts/gecko/third_party/python/taskcluster_taskgraph/taskgraph/optimize/base.py", line 491, in reduce
[task 2023-10-06T12:59:08.224Z]     for rv in results:
[task 2023-10-06T12:59:08.224Z]   File "/builds/worker/checkouts/gecko/third_party/python/taskcluster_taskgraph/taskgraph/optimize/base.py", line 467, in _generate_results
[task 2023-10-06T12:59:08.224Z]     yield getattr(sub, fname)(*passthru, arg)
[task 2023-10-06T12:59:08.224Z]   File "/builds/worker/checkouts/gecko/taskcluster/gecko_taskgraph/optimize/bugbug.py", line 143, in should_remove_task
[task 2023-10-06T12:59:08.224Z]     new_data = push_schedules(params["project"], rev)
[task 2023-10-06T12:59:08.224Z]   File "/builds/worker/checkouts/gecko/python/mozbuild/mozbuild/util.py", line 1054, in __call__
[task 2023-10-06T12:59:08.224Z]     self[args] = self.func(*args)
[task 2023-10-06T12:59:08.224Z]   File "/builds/worker/checkouts/gecko/taskcluster/gecko_taskgraph/util/bugbug.py", line 115, in push_schedules
[task 2023-10-06T12:59:08.224Z]     raise BugbugTimeoutException(f"Timed out waiting for result from '{url}'")
[task 2023-10-06T12:59:08.224Z] gecko_taskgraph.util.bugbug.BugbugTimeoutException: Timed out waiting for result from 'https://bugbug.herokuapp.com/push/try/afbc66f1a829ae8532597dc89eee4823d698b248/schedules'
marco-c commented 11 months ago

Unfortunately "auto" only supports autoland for now (see also https://bugzilla.mozilla.org/show_bug.cgi?id=1694407).