Do not auto-retry unrecoverable `missing_dependency_failure` job failure
What does this MR do and why?
When a job is manual
and is executed after a long time that dependencies are not longer valid, the job fails with missing_dependency_failure
. In such cases, users have to re-create a pipeline or re-execute all of the upstream/depended jobs manually (i.e. not recoverable themselves). However, the system currently auto-retry such jobs, which results in a weird behavior that an unnecessary environment is re-spawned again.
This MR explicitly specify that missing_dependency_failure
failure is not recoverable in the Auto-Retry service.
This also effectively mitigates the subtransaction issue.
Screenshots or screen recordings
How to set up and validate locally
- Run a pipeline
- Erase an upstream job
- Play the downstream job
- Make sure the environment is not re-created
MR acceptance checklist
This checklist encourages us to confirm any changes have been analyzed to reduce risks in quality, performance, reliability, security, and maintainability.
-
I have evaluated the MR acceptance checklist for this MR.
Merge request reports
Activity
added grouprelease [DEPRECATED] label
changed milestone to %14.5
@stanhu Probably this is the easiest fix.
assigned to @shinya.maeda
mentioned in issue #341100 (closed)
- A deleted user
added backend label
2 Messages CHANGELOG missing: If you want to create a changelog entry for GitLab FOSS, add the
Changelog
trailer to the commit message you want to add to the changelog.If you want to create a changelog entry for GitLab EE, also add the
EE: true
trailer to your commit message.If this merge request doesn't need a CHANGELOG entry, feel free to ignore this message.
This merge request adds or changes documentation files. A review from the Technical Writing team before you merge is recommended. Reviews can happen after you merge. Documentation review
The following files require a review from a technical writer:
doc/ci/yaml/index.md
The review does not need to block merging this merge request. See the:
-
Metadata for the
*.md
files that you've changed. The first few lines of each*.md
file identify the stage and group most closely associated with your docs change. - The Technical Writer assigned for that stage and group.
- Documentation workflows for information on when to assign a merge request for review.
Reviewer roulette
Changes that require review have been detected!
Please refer to the table below for assigning reviewers and maintainers suggested by Danger in the specified category:
Category Reviewer Maintainer backend Alexandru Croitor ( @acroitor
) (UTC+3, 4 hours behind@shinya.maeda
)Alex Kalderimis ( @alexkalderimis
) (UTC+1, 6 hours behind@shinya.maeda
)frontend Sheldon Led ( @sheldonled
) (UTC+1, 6 hours behind@shinya.maeda
)Simon Knox ( @psimyn
) (UTC+10, 3 hours ahead of@shinya.maeda
)To spread load more evenly across eligible reviewers, Danger has picked a candidate for each review slot, based on their timezone. Feel free to override these selections if you think someone else would be better-suited or use the GitLab Review Workload Dashboard to find other available reviewers.
To read more on how to use the reviewer roulette, please take a look at the Engineering workflow and code review guidelines. Please consider assigning a reviewer or maintainer who is a domain expert in the area of the merge request.
Once you've decided who will review this merge request, assign them as a reviewer! Danger does not automatically notify them for you.
If needed, you can retry the
danger-review
job that generated this comment.Generated by
Danger- Resolved by Stan Hu
removed [deprecated] Accepting merge requests label
added 328 commits
-
f4d08323...c430f6b7 - 327 commits from branch
master
- 1e81f41c - Fix subtransaction on Job Retry
-
f4d08323...c430f6b7 - 327 commits from branch
- A deleted user
added documentation frontend labels
removed documentation frontend labels
Bundle size analysis [beta]
This compares changes in bundle size for entry points between the commits 0b00bb96 and d6870c2b
Special assetsEntrypoint / Name Size before Size after Diff Diff in percent average 3.23 MB 3.23 MB - 0.0 % mainChunk 1.89 MB 1.89 MB - -0.0 % Significant Reduction: 12Expand
Entrypoint / Name Size before Size after Diff Diff in percent pages.profiles 281.81 KB 166.56 KB -115.25 KB -40.9 % pages.profiles.personal_access_tokens 341.81 KB 226.56 KB -115.25 KB -33.7 % pages.profiles.slacks 289.6 KB 174.35 KB -115.25 KB -39.8 % pages.profiles.two_factor_auths 416.34 KB 302.43 KB -113.91 KB -27.4 % pages.profiles.preferences.show 295.88 KB 182.61 KB -113.27 KB -38.3 % pages.profiles.show 1.1 MB 1021.15 KB -109.39 KB -9.7 % pages.profiles.accounts.show 350.23 KB 309.94 KB -40.3 KB -11.5 % pages.profiles.billings 330.48 KB 290.18 KB -40.3 KB -12.2 % pages.profiles.keys 287.48 KB 247.18 KB -40.3 KB -14.0 % pages.import.gitlab_projects.new 11.84 KB 10.57 KB -1.27 KB -10.8 % The table above is limited to 10 entries. Please look at the full report for more details
Note: We do not have exact data for 0b00bb96. So we have used data from: da1009a2.
The target commit was too new, so we used the latest commit from master we have info on.
It might help to rerun thebundle-size-review
job
This might mean that you have a few false positives in this report. If something unrelated to your code changes is reported, you can check this comparison in order to see if they caused this change.Please look at the full report for more details
Read more about how this report works.
Generated by
DangerAllure report
allure-report-publisher
generated test report for d6870c2b!review-qa-smoke:
test reportchanged milestone to %14.4
removed review request for @stanhu
@stanhu
, thanks for approving this merge request.This is the first time the merge request is approved. To ensure full test coverage, a new pipeline has been started.
For more info, please refer to the following links:
- A deleted user
added documentation frontend labels
- Resolved by Shinya Maeda
@shinya.maeda So this make jobs with
missing_dependency_failure
non-retriable? It makes sense, but I think we should update the commit message to explain what and why, because "Fix subtransaction on Job Retry" is a side-effect of this MR, right?
removed review request for @krasio
added grouprelease [DEPRECATED] label and removed grouppipeline execution label
added 353 commits
-
1e81f41c...81f1b5f4 - 352 commits from branch
master
- 11ba108a - Do not auto-retry unrecoverable job failure
-
1e81f41c...81f1b5f4 - 352 commits from branch
marked the checklist item I have evaluated the MR acceptance checklist for this MR. as completed
added 160 commits
-
a1b8e1bf...72485b12 - 159 commits from branch
master
- d6870c2b - Do not auto-retry unrecoverable job failure
-
a1b8e1bf...72485b12 - 159 commits from branch
- Resolved by Simon Knox
@vyaklushin Would you mind reviewing as backend maintainer?
@tomquirk Would you mind reviewing as frontend reviewer?
Thanks!
requested review from @vyaklushin and @tomquirk
enabled an automatic merge when the pipeline for c6f7cd81 succeeds
mentioned in commit ea0528bd
added workflowstaging-canary label
added workflowstaging label and removed workflowstaging-canary label
added workflowcanary label and removed workflowstaging label
added workflowproduction label and removed workflowcanary label
mentioned in merge request !72281 (merged)
added releasedcandidate label
mentioned in merge request !72970 (merged)
mentioned in merge request !73150 (merged)
added typemaintenance label
added releasedpublished label and removed releasedcandidate label