-
Bug
-
Resolution: Fixed
-
Minor
We have identified an issue with dead Jenkins executor, which happens with the following stacktrace:
java.lang.NullPointerException at org.jenkinsci.plugins.p4.client.ConnectionConfig.<init>(ConnectionConfig.java:18) at org.jenkinsci.plugins.p4.client.ConnectionHelper.<init>(ConnectionHelper.java:61) at org.jenkinsci.plugins.p4.PerforceScm.guessBrowser(PerforceScm.java:186) at hudson.scm.SCM.getEffectiveBrowser(SCM.java:146) at hudson.scm.ChangeLogSet.browserFromBuild(ChangeLogSet.java:82) at hudson.scm.ChangeLogSet.<init>(ChangeLogSet.java:76) at com.tikal.jenkins.plugins.multijob.MultiJobChangeLogSet.<init>(MultiJobChangeLogSet.java:11) at com.tikal.jenkins.plugins.multijob.MultiJobBuild.<init>(MultiJobBuild.java:36) at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) at java.lang.reflect.Constructor.newInstance(Constructor.java:408) at jenkins.model.lazy.LazyBuildMixIn.newBuild(LazyBuildMixIn.java:184) at hudson.model.AbstractProject.newBuild(AbstractProject.java:1018) at hudson.model.AbstractProject.createExecutable(AbstractProject.java:1209) at hudson.model.AbstractProject.createExecutable(AbstractProject.java:144) at hudson.model.Executor$1.call(Executor.java:364) at hudson.model.Executor$1.call(Executor.java:346) at hudson.model.Queue._withLock(Queue.java:1379) at hudson.model.Queue.withLock(Queue.java:1240) at hudson.model.Executor.run(Executor.java:346)
And... all Jenkins logic layers do not catch Runtime exceptions and hence lead to the executor death. These exceptions should be handled in...
1) hudson.model.Executor.run
2) jenkins.model.lazy.LazyBuildMixIn.newBuild
3) hudson.scm.ChangeLogSet.browserFromBuild
It would make the core more robust
- links to