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

Tasks that show up later on the command line can be mysteriously skipped #20272

Closed
ghale opened this issue Mar 24, 2022 · 1 comment
Closed
Assignees
Labels
a:bug in:scheduler execution plan, task graph, work lease, project lock
Milestone

Comments

@ghale
Copy link
Member

ghale commented Mar 24, 2022

There is an issue in the logic introduced in 7.4 to better ensure command line order is honored. When a task gets pulled in from an earlier command line selector has a mustRunAfter relationship to a task that does not get executed, tasks pulled in by later command line selectors can be skipped.

For example, if I run clean build on the command line, and clean has mustRunAfter foo but the foo task is not a part of the build (i.e. neither clean nor build pull in foo), then the producer tasks pulled in by build will get skipped.

Expected Behavior

All tasks should execute

Current Behavior

Tasks from selectors later on the command line simply do not execute

Steps to Reproduce

plugins {
    id 'java'
}


task foo
clean.mustRunAfter foo

Run: clean build

@ghale ghale added this to the 7.4.2 milestone Mar 24, 2022
@ghale ghale self-assigned this Mar 24, 2022
@ghale ghale added the in:scheduler execution plan, task graph, work lease, project lock label Mar 24, 2022
@DPUkyle
Copy link
Contributor

DPUkyle commented Mar 24, 2022

I verified the reproducer. Thanks Gary!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
a:bug in:scheduler execution plan, task graph, work lease, project lock
Projects
None yet
Development

No branches or pull requests

3 participants