-
Bug
-
Resolution: Fixed
-
Blocker
Observed with post-1.597 cores, after run ID migration.
hudson.model.Run.<init>(Run.java:320) org.jenkinsci.plugins.workflow.job.WorkflowRun.<init>(WorkflowRun.java:133) sun.reflect.GeneratedConstructorAccessor65.newInstance(Unknown Source) sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) java.lang.reflect.Constructor.newInstance(Constructor.java:408) jenkins.model.lazy.LazyBuildMixIn.loadBuild(LazyBuildMixIn.java:158) jenkins.model.lazy.LazyBuildMixIn$1.create(LazyBuildMixIn.java:135) hudson.model.RunMap.retrieve(RunMap.java:222) hudson.model.RunMap.retrieve(RunMap.java:57) jenkins.model.lazy.AbstractLazyLoadRunMap.load(AbstractLazyLoadRunMap.java:465) jenkins.model.lazy.AbstractLazyLoadRunMap.load(AbstractLazyLoadRunMap.java:448) jenkins.model.lazy.AbstractLazyLoadRunMap.getByNumber(AbstractLazyLoadRunMap.java:356) hudson.model.RunMap.getById(RunMap.java:203) org.jenkinsci.plugins.workflow.job.WorkflowRun$Owner.run(WorkflowRun.java:559) org.jenkinsci.plugins.workflow.job.WorkflowRun$Owner.getRootDir(WorkflowRun.java:588) org.jenkinsci.plugins.workflow.cps.CpsFlowExecution.getStorageDir(CpsFlowExecution.java:315) org.jenkinsci.plugins.workflow.cps.CpsFlowExecution.createStorage(CpsFlowExecution.java:308) org.jenkinsci.plugins.workflow.cps.CpsFlowExecution.access$800(CpsFlowExecution.java:188) org.jenkinsci.plugins.workflow.cps.CpsFlowExecution$ConverterImpl.unmarshal(CpsFlowExecution.java:817) hudson.util.XStream2$AssociatedConverterImpl.unmarshal(XStream2.java:362) com.thoughtworks.xstream.core.TreeUnmarshaller.convert(TreeUnmarshaller.java:72) com.thoughtworks.xstream.core.AbstractReferenceUnmarshaller.convert(AbstractReferenceUnmarshaller.java:65) com.thoughtworks.xstream.core.TreeUnmarshaller.convertAnother(TreeUnmarshaller.java:66) hudson.util.RobustReflectionConverter.unmarshalField(RobustReflectionConverter.java:349) hudson.util.RobustReflectionConverter.doUnmarshal(RobustReflectionConverter.java:289) hudson.util.RobustReflectionConverter.unmarshal(RobustReflectionConverter.java:228) com.thoughtworks.xstream.core.TreeUnmarshaller.convert(TreeUnmarshaller.java:72) com.thoughtworks.xstream.core.AbstractReferenceUnmarshaller.convert(AbstractReferenceUnmarshaller.java:65) com.thoughtworks.xstream.core.TreeUnmarshaller.convertAnother(TreeUnmarshaller.java:66) com.thoughtworks.xstream.core.TreeUnmarshaller.convertAnother(TreeUnmarshaller.java:50) com.thoughtworks.xstream.core.TreeUnmarshaller.start(TreeUnmarshaller.java:134) com.thoughtworks.xstream.core.AbstractTreeMarshallingStrategy.unmarshal(AbstractTreeMarshallingStrategy.java:32) com.thoughtworks.xstream.XStream.unmarshal(XStream.java:1189) hudson.util.XStream2.unmarshal(XStream2.java:113) com.thoughtworks.xstream.XStream.unmarshal(XStream.java:1173) hudson.XmlFile.unmarshal(XmlFile.java:163) org.jenkinsci.plugins.workflow.job.WorkflowRun.reload(WorkflowRun.java:360) hudson.model.Run.<init>(Run.java:320)
While it is awkward that CpsFlowExecution deserialization in turn forces the WorkflowRun candidate to be returned from Owner.run, this is normally harmless. The problem here seems to be that after RunIdMigrator has run, the WorkflowRun.id is read (via key) by reload, yet it is still null at that point because unmarshal has yet to be called, so LOADING_RUNS is inaccurate.
- is blocking
-
JENKINS-24380 Use build numbers as IDs
-
- Resolved
-
- is related to
-
JENKINS-27704 Clean up build record storage
-
- In Progress
-
-
JENKINS-26761 WorkflowJob.getSCMs throws NullPointerException from notifyCommit hooks after Jenkins Restart
-
- Resolved
-
- links to
[JENKINS-27531] Stack overflow in WorkflowRun.reload after run ID migration
Status | Original: Open [ 1 ] | New: In Progress [ 3 ] |
Description |
Original:
Observed with newer cores, after run ID migration. {code:none} hudson.model.Run.<init>(Run.java:320) org.jenkinsci.plugins.workflow.job.WorkflowRun.<init>(WorkflowRun.java:133) sun.reflect.GeneratedConstructorAccessor65.newInstance(Unknown Source) sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) java.lang.reflect.Constructor.newInstance(Constructor.java:408) jenkins.model.lazy.LazyBuildMixIn.loadBuild(LazyBuildMixIn.java:158) jenkins.model.lazy.LazyBuildMixIn$1.create(LazyBuildMixIn.java:135) hudson.model.RunMap.retrieve(RunMap.java:222) hudson.model.RunMap.retrieve(RunMap.java:57) jenkins.model.lazy.AbstractLazyLoadRunMap.load(AbstractLazyLoadRunMap.java:465) jenkins.model.lazy.AbstractLazyLoadRunMap.load(AbstractLazyLoadRunMap.java:448) jenkins.model.lazy.AbstractLazyLoadRunMap.getByNumber(AbstractLazyLoadRunMap.java:356) hudson.model.RunMap.getById(RunMap.java:203) org.jenkinsci.plugins.workflow.job.WorkflowRun$Owner.run(WorkflowRun.java:559) org.jenkinsci.plugins.workflow.job.WorkflowRun$Owner.getRootDir(WorkflowRun.java:588) org.jenkinsci.plugins.workflow.cps.CpsFlowExecution.getStorageDir(CpsFlowExecution.java:315) org.jenkinsci.plugins.workflow.cps.CpsFlowExecution.createStorage(CpsFlowExecution.java:308) org.jenkinsci.plugins.workflow.cps.CpsFlowExecution.access$800(CpsFlowExecution.java:188) org.jenkinsci.plugins.workflow.cps.CpsFlowExecution$ConverterImpl.unmarshal(CpsFlowExecution.java:817) hudson.util.XStream2$AssociatedConverterImpl.unmarshal(XStream2.java:362) com.thoughtworks.xstream.core.TreeUnmarshaller.convert(TreeUnmarshaller.java:72) com.thoughtworks.xstream.core.AbstractReferenceUnmarshaller.convert(AbstractReferenceUnmarshaller.java:65) com.thoughtworks.xstream.core.TreeUnmarshaller.convertAnother(TreeUnmarshaller.java:66) hudson.util.RobustReflectionConverter.unmarshalField(RobustReflectionConverter.java:349) hudson.util.RobustReflectionConverter.doUnmarshal(RobustReflectionConverter.java:289) hudson.util.RobustReflectionConverter.unmarshal(RobustReflectionConverter.java:228) com.thoughtworks.xstream.core.TreeUnmarshaller.convert(TreeUnmarshaller.java:72) com.thoughtworks.xstream.core.AbstractReferenceUnmarshaller.convert(AbstractReferenceUnmarshaller.java:65) com.thoughtworks.xstream.core.TreeUnmarshaller.convertAnother(TreeUnmarshaller.java:66) com.thoughtworks.xstream.core.TreeUnmarshaller.convertAnother(TreeUnmarshaller.java:50) com.thoughtworks.xstream.core.TreeUnmarshaller.start(TreeUnmarshaller.java:134) com.thoughtworks.xstream.core.AbstractTreeMarshallingStrategy.unmarshal(AbstractTreeMarshallingStrategy.java:32) com.thoughtworks.xstream.XStream.unmarshal(XStream.java:1189) hudson.util.XStream2.unmarshal(XStream2.java:113) com.thoughtworks.xstream.XStream.unmarshal(XStream.java:1173) hudson.XmlFile.unmarshal(XmlFile.java:163) org.jenkinsci.plugins.workflow.job.WorkflowRun.reload(WorkflowRun.java:360) hudson.model.Run.<init>(Run.java:320) {code} |
New:
Observed with post-1.597 cores, after run ID migration. {code:none} hudson.model.Run.<init>(Run.java:320) org.jenkinsci.plugins.workflow.job.WorkflowRun.<init>(WorkflowRun.java:133) sun.reflect.GeneratedConstructorAccessor65.newInstance(Unknown Source) sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) java.lang.reflect.Constructor.newInstance(Constructor.java:408) jenkins.model.lazy.LazyBuildMixIn.loadBuild(LazyBuildMixIn.java:158) jenkins.model.lazy.LazyBuildMixIn$1.create(LazyBuildMixIn.java:135) hudson.model.RunMap.retrieve(RunMap.java:222) hudson.model.RunMap.retrieve(RunMap.java:57) jenkins.model.lazy.AbstractLazyLoadRunMap.load(AbstractLazyLoadRunMap.java:465) jenkins.model.lazy.AbstractLazyLoadRunMap.load(AbstractLazyLoadRunMap.java:448) jenkins.model.lazy.AbstractLazyLoadRunMap.getByNumber(AbstractLazyLoadRunMap.java:356) hudson.model.RunMap.getById(RunMap.java:203) org.jenkinsci.plugins.workflow.job.WorkflowRun$Owner.run(WorkflowRun.java:559) org.jenkinsci.plugins.workflow.job.WorkflowRun$Owner.getRootDir(WorkflowRun.java:588) org.jenkinsci.plugins.workflow.cps.CpsFlowExecution.getStorageDir(CpsFlowExecution.java:315) org.jenkinsci.plugins.workflow.cps.CpsFlowExecution.createStorage(CpsFlowExecution.java:308) org.jenkinsci.plugins.workflow.cps.CpsFlowExecution.access$800(CpsFlowExecution.java:188) org.jenkinsci.plugins.workflow.cps.CpsFlowExecution$ConverterImpl.unmarshal(CpsFlowExecution.java:817) hudson.util.XStream2$AssociatedConverterImpl.unmarshal(XStream2.java:362) com.thoughtworks.xstream.core.TreeUnmarshaller.convert(TreeUnmarshaller.java:72) com.thoughtworks.xstream.core.AbstractReferenceUnmarshaller.convert(AbstractReferenceUnmarshaller.java:65) com.thoughtworks.xstream.core.TreeUnmarshaller.convertAnother(TreeUnmarshaller.java:66) hudson.util.RobustReflectionConverter.unmarshalField(RobustReflectionConverter.java:349) hudson.util.RobustReflectionConverter.doUnmarshal(RobustReflectionConverter.java:289) hudson.util.RobustReflectionConverter.unmarshal(RobustReflectionConverter.java:228) com.thoughtworks.xstream.core.TreeUnmarshaller.convert(TreeUnmarshaller.java:72) com.thoughtworks.xstream.core.AbstractReferenceUnmarshaller.convert(AbstractReferenceUnmarshaller.java:65) com.thoughtworks.xstream.core.TreeUnmarshaller.convertAnother(TreeUnmarshaller.java:66) com.thoughtworks.xstream.core.TreeUnmarshaller.convertAnother(TreeUnmarshaller.java:50) com.thoughtworks.xstream.core.TreeUnmarshaller.start(TreeUnmarshaller.java:134) com.thoughtworks.xstream.core.AbstractTreeMarshallingStrategy.unmarshal(AbstractTreeMarshallingStrategy.java:32) com.thoughtworks.xstream.XStream.unmarshal(XStream.java:1189) hudson.util.XStream2.unmarshal(XStream2.java:113) com.thoughtworks.xstream.XStream.unmarshal(XStream.java:1173) hudson.XmlFile.unmarshal(XmlFile.java:163) org.jenkinsci.plugins.workflow.job.WorkflowRun.reload(WorkflowRun.java:360) hudson.model.Run.<init>(Run.java:320) {code} While it is awkward that {{CpsFlowExecution}} deserialization in turn forces the {{WorkflowRun}} candidate to be returned from {{Owner.run}}, this is normally harmless. The problem here seems to be that after {{RunIdMigrator}} has run, the {{WorkflowRun.id}} is read (via {{key}}) by {{reload}}, yet it is still null at that point because {{unmarshal}} has yet to be called, so {{LOADING_RUNS}} is inaccurate. |
Summary | Original: Stack overflow in WorkflowRun.reload | New: Stack overflow in WorkflowRun.reload after run ID migration |
Link |
New:
This issue is blocking |
Remote Link | New: This issue links to "PR 97 (Web Link)" [ 12171 ] |
Resolution | New: Fixed [ 1 ] | |
Status | Original: In Progress [ 3 ] | New: Resolved [ 5 ] |
Link |
New:
This issue is related to |
Link | New: This issue is related to JENKINS-27704 [ JENKINS-27704 ] |
Remote Link | New: This issue links to "PR 159 (Web Link)" [ 13003 ] |
Workflow | Original: JNJira [ 161740 ] | New: JNJira + In-Review [ 196854 ] |
Component/s | New: pipeline-general [ 21692 ] |