-
Bug
-
Resolution: Duplicate
-
Major
-
None
The pipeline job java instances are duplicated in memory on each job-dsl execution (affecting to pipeline items modification).
The steps to reproduce the issue are:
- Create a freestyle job with this Process Job DSLs build step script
freeStyleJob('dsl-free-upstream') { description 'FREESTYLE' quietPeriod(0) concurrentBuild(true) steps { shell 'sleep 2' shell 'echo "UPSTREAM"' shell 'echo "BYE"' } } def pscript = """ echo 'PIPELINE' input 'Pipeline has paused and needs your input before proceeding' node { echo 'inside the node' } echo 'BYE' """ workflowJob('dsl-pipeline') { description 'PIPELINE' quietPeriod(0) triggers { upstream('dsl-free-upstream', 'SUCCESS') } definition { cps { script(pscript) } } }
- Build the dsl job.
- Build the dsl-free-upstream job
- Look for that in the console output
{{BYE
Triggering a new build of dsl-pipeline #1
Finished: SUCCESS}}
- Modified the dsl job script pscript, for example:
//... def pscript = """ echo 'PIPELINE' input 'Pipeline has paused and needs your input before proceeding' node { echo 'inside the node' } echo 'BYE' echo 'one' """ //...
- Build the dsl job.
- Build the dsl-free-upstream job
- Look for that in the console output
{{BYE
Triggering a new build of dsl-pipeline #2
Triggering a new build of dsl-pipeline #2
Finished: SUCCESS}}
If you add more modifications in the pipeline definition, more instances will appears.
- duplicates
-
JENKINS-33971 WorkflowJob not reliably started from ReverseBuildTrigger after restart
-
- Resolved
-
[JENKINS-36612] Java Pipeline job instances duplicated on each job modification
Description |
Original:
The pipeline job java instances are duplicated in memory on each job-dsl execution (affecting to pipeline items modification). The steps to reproduce the issue are: - Create a freestyle job with this Process Job DSLs build step script {code:java} freeStyleJob('dsl-free-upstream') { description 'FREESTYLE' quietPeriod(0) concurrentBuild(true) steps { shell 'sleep 2' shell 'echo "UPSTREAM"' shell 'echo "BYE"' } } def pscript = """ echo 'PIPELINE' input 'Pipeline has paused and needs your input before proceeding' node { echo 'inside the node' } echo 'BYE' """ workflowJob('dsl-pipeline') { description 'PIPELINE' quietPeriod(0) triggers { upstream('dsl-free-upstream', 'SUCCESS') } definition { cps { script(pscript) } } } {code} - Build the dsl job. - Build the dsl-free-upstream job - Look for that in the console output {{ BYE Triggering a new build of dsl-pipeline #1 Finished: SUCCESS}} - Modified the dsl job script pscript, for example: {code:java} //... def pscript = """ echo 'PIPELINE' input 'Pipeline has paused and needs your input before proceeding' node { echo 'inside the node' } echo 'BYE' echo 'one' """ //... {code} - Build the dsl job. - Build the dsl-free-upstream job - Look for that in the console output {{BYE Triggering a new build of dsl-pipeline #2 Triggering a new build of dsl-pipeline #2 Finished: SUCCESS}} If you add more modifications in the pipeline definition, more instances will appears. |
New:
The pipeline job java instances are duplicated in memory on each job-dsl execution (affecting to pipeline items modification). The steps to reproduce the issue are: - Create a freestyle job with this Process Job DSLs build step script {code:java} freeStyleJob('dsl-free-upstream') { description 'FREESTYLE' quietPeriod(0) concurrentBuild(true) steps { shell 'sleep 2' shell 'echo "UPSTREAM"' shell 'echo "BYE"' } } def pscript = """ echo 'PIPELINE' input 'Pipeline has paused and needs your input before proceeding' node { echo 'inside the node' } echo 'BYE' """ workflowJob('dsl-pipeline') { description 'PIPELINE' quietPeriod(0) triggers { upstream('dsl-free-upstream', 'SUCCESS') } definition { cps { script(pscript) } } } {code} - Build the dsl job. - Build the dsl-free-upstream job - Look for that in the console output {{BYE Triggering a new build of dsl-pipeline #1 Finished: SUCCESS}} - Modified the dsl job script pscript, for example: {code:java} //... def pscript = """ echo 'PIPELINE' input 'Pipeline has paused and needs your input before proceeding' node { echo 'inside the node' } echo 'BYE' echo 'one' """ //... {code} - Build the dsl job. - Build the dsl-free-upstream job - Look for that in the console output {{BYE Triggering a new build of dsl-pipeline #2 Triggering a new build of dsl-pipeline #2 Finished: SUCCESS}} If you add more modifications in the pipeline definition, more instances will appears. |
Priority | Original: Critical [ 2 ] | New: Major [ 3 ] |
Component/s | New: core [ 15593 ] | |
Component/s | New: workflow-plugin [ 18820 ] | |
Assignee | Original: Daniel Spilker [ daspilker ] |
Workflow | Original: JNJira [ 173333 ] | New: JNJira + In-Review [ 185073 ] |
Component/s | New: pipeline-general [ 21692 ] |
Component/s | Original: workflow-plugin [ 18820 ] |
Link |
New:
This issue duplicates |
Resolution | New: Duplicate [ 3 ] | |
Status | Original: Open [ 1 ] | New: Resolved [ 5 ] |
Status | Original: Resolved [ 5 ] | New: Closed [ 6 ] |