|
||||||||
|
This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators. For more information on JIRA, see: http://www.atlassian.com/software/jira |
||||||||
You received this message because you are subscribed to the Google Groups "Jenkins Issues" group.
To unsubscribe from this group and stop receiving emails from it, send an email to [email protected].
For more options, visit https://groups.google.com/d/optout.

Code changed in jenkins
User: Kohsuke Kawaguchi
Path:
cps/src/main/java/org/jenkinsci/plugins/workflow/cps/CpsFlowExecution.java
http://jenkins-ci.org/commit/workflow-plugin/b75509423628767531fe5204d6acf1673b6698b3
Log:
[FIXED JENKINS-25495]
Only return inner-most StepExecutions.
For quite a while, I explored the option of composing Continuables. That
is, instead of creating a new thread, we should take existing CpsThread
and use that to run the body, which is what one would naturally expect.
But it turns out this is actually tricky, because when the body is done
and we fire BodyInvoker.bodyCallback, that CpsThread isn't marked
finished yet (which probably is a problem of its own, because that means
we are calling these callbacks from CpsVmThread, which we generally
avoid.) This approach also destroys the symmetry between multiple
concurrent bodies and single thread body.
So in the end I came back to the simple approach of just filtering out
what we think is outer StepExecutions by looking at FlowHeads of various
CpsThread.
I'm going to check in my additions in groovy-cps during this experiment.