[SERVER-56812] Certain Evergreen tasks are marked as depending on jscore but do not respect this dependency Created: 07/May/21  Updated: 06/Oct/21  Resolved: 04/Jun/21

Status: Closed
Project: Core Server
Component/s: Testing Infrastructure
Affects Version/s: None
Fix Version/s: 5.1.0-rc0

Type: Bug Priority: Major - P3
Reporter: Maria van Keulen Assignee: Tausif Rahman (Inactive)
Resolution: Done Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Sprint: DAG 2021-05-31, DAG 2021-06-14
Participants:
Story Points: 1

 Description   

There look to be ~17 generator tasks, e.g., this one that are marked as depending on jsCore. However, this dependency is not respected, either by the generator task or by the generated tasks, e.g., this generator and this generated task. The former has no depends_on section in the UI, and the latter depends on archive_dist_test_debug instead. The syntax used for this depends_on will not be respected by Evergreen directly; it's possible the intent was for this depends_on to be passed to the evergreen_generate_resmoke_tasks.py script instead, but isn't getting parsed.

If the intent is to make the generator depend on jsCore, fixing the depends_on will likely increase patch makespans, so it'd be preferable to remove this depends_on entirely and rely on EVG-14537 instead.
If the intent is to make the generated tasks depend on jsCore, there's an argument to fix and keep this dependency for any tasks that will fail if jsCore fails.

Either way, it'd be great to address the erroneous depends_on to avoid further copy-pasting.



 Comments   
Comment by Vivian Ge (Inactive) [ 06/Oct/21 ]

Updating the fixversion since branching activities occurred yesterday. This ticket will be in rc0 when it’s been triggered. For more active release information, please keep an eye on #server-release. Thank you!

Comment by Githook User [ 04/Jun/21 ]

Author:

{'name': 'trahman1318', 'email': 'tausif.rahman@mongodb.com', 'username': 'trahman1318'}

Message: SERVER-56812: Certain Evergreen tasks are marked as depending on jscore but do not respect this dependency
Branch: master
https://github.com/mongodb/mongo/commit/3cdb8bdb74ba1be8e778fdac9bfa04304d655a6e

Comment by Maria van Keulen [ 10/May/21 ]

Ah I see, thank you for the detailed explanation. Removing the `depends_on` sounds good to me.

Comment by David Bradford (Inactive) [ 10/May/21 ]

Generating tasks and dependencies gets really complicated really fast.

In order for a generated task to properly `depend_on` another generated task, the first task needs to have completed generating its child tasks. Because the 2nd tasks child tasks will need to depend on all the tasks generated by the first task. In order to accomplish this, we need the generating task to depend on the generating task of the dependency (this is done via normal evergreen depends_on syntax) and we specify that generated tasks should depend on tasks generated by the dependency (this is what the `depends_on` var in the `generate resmoke tasks` call is for).

In SERVER-54159, all of the normal `depends_on` for jsCore were removed, but the vars for the dependency were not removed. The `depends_on` var was only meant for dependencies for other generated tasks, but in this case `jsCore` is not a generated task. So it doesn't do anything. We should probably remove it, because it is misleading at best.

Comment by Maria van Keulen [ 07/May/21 ]

CC david.bradford assigning this to DAG; not sure if evergreen_generate_resmoke_tasks.py is specifically intended to rely on depends_on being a variable or not.

Generated at Thu Feb 08 05:40:16 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.