Skip to content
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

DEVPROD-5584 Generalize dependency bulk query #8200

Merged
merged 3 commits into from
Aug 19, 2024

Conversation

hadjri
Copy link
Contributor

@hadjri hadjri commented Aug 15, 2024

DEVPROD-5584

Description

After trying for a while, I wasn't able to reproduce this issue since we do unblock all child dependencies when we restart a task.

The task in the ticket has many other tasks that depend on it, and the check blocked tasks job which runs on a 15 minute cron coincidentally ran within a few seconds of the time that this task was restarted.

One possibility is a race occurred between the check blocked tasks job (which recursively blocks tasks if it finds them in a weird state) and the restart operation (which recursively unblocks child dependency tasks), which at the time of this ticket were both slow operations for large dependency trees.

Since this ticket was created, [DEVPROD-5318] was done to improve the performance of bulk blocking large dependency trees of tasks, and in this PR I've updated the recursive unblocking dependency logic to use the same approach, in case this issue arose due to there being too many dependencies to modify causing slowness.

Testing

Modified unit tests

@hadjri hadjri requested a review from a team August 15, 2024 22:28
model/task_lifecycle.go Outdated Show resolved Hide resolved
model/task/db.go Outdated Show resolved Hide resolved
model/task/db.go Outdated Show resolved Hide resolved
model/task/db.go Outdated Show resolved Hide resolved
model/task_lifecycle.go Outdated Show resolved Hide resolved
@hadjri hadjri requested a review from Kimchelly August 16, 2024 15:49
@hadjri hadjri merged commit 9cfd7e2 into evergreen-ci:main Aug 19, 2024
10 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants