Uploaded image for project: 'Jenkins'
  1. Jenkins
  2. JENKINS-7281

Matrix build on multiple hosts cant be imported by 1.373

    • Icon: Bug Bug
    • Resolution: Fixed
    • Icon: Major Major
    • matrix-project-plugin
    • None
    • Solaris 10, sparc. Hudson home on nfs server mounted with v3. JVM 1.5.0_06-b05
      Windows
      Linux ubuntu

      After upgrade to 1.373 our matrix build stop working. Even creating of a new job did not work. The job executes a shell script on multiple nodes in parallel. Configuration changes are simply lost. A NPE option was thrown :

      Caused by: java.lang.NullPointerException
      at java.util.ArrayList.<init>(ArrayList.java:133)
      at hudson.matrix.Axis.<init>(Axis.java:74)
      at hudson.matrix.LabelAxis.<init>(LabelAxis.java:40)
      at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
      at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
      at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
      at java.lang.reflect.Constructor.newInstance(Constructor.java:494)
      at org.kohsuke.stapler.RequestImpl.invokeConstructor(RequestImpl.java:409)
      at org.kohsuke.stapler.RequestImpl.bindJSON(RequestImpl.java:355)
      at hudson.model.Descriptor.newInstance(Descriptor.java:466)
      at hudson.model.Descriptor.newInstancesFromHeteroList(Descriptor.java:743)
      at hudson.util.DescribableList.rebuildHetero(DescribableList.java:172)
      at hudson.matrix.MatrixProject.submit(MatrixProject.java:561)
      at hudson.model.Job.doConfigSubmit(Job.java:1086)
      at hudson.model.AbstractProject.doConfigSubmit(AbstractProject.java:571)
      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      at java.lang.reflect.Method.invoke(Method.java:585)
      at org.kohsuke.stapler.Function$InstanceFunction.invoke(Function.java:259)
      at org.kohsuke.stapler.Function.bindAndInvoke(Function.java:126)
      at org.kohsuke.stapler.Function.bindAndInvokeAndServeResponse(Function.java:65)
      at org.kohsuke.stapler.MetaClass$1.doDispatch(MetaClass.java:79)
      at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:30)

      a roll back to 1.372 fixed the issue.

        1. doubleSlaveConfig.png
          doubleSlaveConfig.png
          20 kB
        2. stdouterror.txt
          10 kB
        3. UIerror.txt
          5 kB

          [JENKINS-7281] Matrix build on multiple hosts cant be imported by 1.373

          David Aldrich added a comment -

          Hi

          We are running Hudson 1.376 on a Windows XP master. Hudson currently runs as a Windows service under my user account.

          We have a matrix job that I can modify without problems. However, if another internal user accesses Hudson (with IE8) and modifies that job (we have no security set-up) she gets an exception when she saves the job.

          This is a recent problem, it was working fine a few weeks back. Please see stack trace below. I wonder if the exception I am seeing is associated with this JIRA issue?

          Best regards

          David

          ============================================

          type Exception report
          message
          description The server encountered an internal error () that prevented it from fulfilling this request.
          exception
          javax.servlet.ServletException
          org.kohsuke.stapler.Stapler.invoke(Stapler.java:569)
          org.kohsuke.stapler.MetaClass$7.doDispatch(MetaClass.java:219)
          org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:30)
          org.kohsuke.stapler.Stapler.invoke(Stapler.java:534)
          org.kohsuke.stapler.Stapler.invoke(Stapler.java:450)
          org.kohsuke.stapler.Stapler.service(Stapler.java:132)
          javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
          hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:94)
          hudson.util.PluginServletFilter.doFilter(PluginServletFilter.java:86)
          hudson.security.csrf.CrumbFilter.doFilter(CrumbFilter.java:47)
          hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:84)
          hudson.security.ChainedServletFilter.doFilter(ChainedServletFilter.java:76)
          hudson.security.HudsonFilter.doFilter(HudsonFilter.java:164)
          root cause
          java.lang.NullPointerException
          java.util.ArrayList.<init>(Unknown Source)
          hudson.matrix.Axis.<init>(Axis.java:74)
          hudson.matrix.LabelAxis.<init>(LabelAxis.java:40)
          sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
          sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
          sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
          java.lang.reflect.Constructor.newInstance(Unknown Source)
          org.kohsuke.stapler.RequestImpl.invokeConstructor(RequestImpl.java:409)
          org.kohsuke.stapler.RequestImpl.bindJSON(RequestImpl.java:355)
          hudson.model.Descriptor.newInstance(Descriptor.java:479)
          hudson.model.Descriptor.newInstancesFromHeteroList(Descriptor.java:756)
          hudson.util.DescribableList.rebuildHetero(DescribableList.java:171)
          hudson.matrix.MatrixProject.submit(MatrixProject.java:563)
          hudson.model.Job.doConfigSubmit(Job.java:1062)
          hudson.model.AbstractProject.doConfigSubmit(AbstractProject.java:578)
          sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
          sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
          sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
          java.lang.reflect.Method.invoke(Unknown Source)
          org.kohsuke.stapler.Function$InstanceFunction.invoke(Function.java:259)
          org.kohsuke.stapler.Function.bindAndInvoke(Function.java:126)
          org.kohsuke.stapler.Function.bindAndInvokeAndServeResponse(Function.java:65)
          org.kohsuke.stapler.MetaClass$1.doDispatch(MetaClass.java:79)
          org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:30)
          org.kohsuke.stapler.Stapler.invoke(Stapler.java:534)
          org.kohsuke.stapler.MetaClass$7.doDispatch(MetaClass.java:219)
          org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:30)
          org.kohsuke.stapler.Stapler.invoke(Stapler.java:534)
          org.kohsuke.stapler.Stapler.invoke(Stapler.java:450)
          org.kohsuke.stapler.Stapler.service(Stapler.java:132)
          javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
          hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:94)
          hudson.util.PluginServletFilter.doFilter(PluginServletFilter.java:86)
          hudson.security.csrf.CrumbFilter.doFilter(CrumbFilter.java:47)
          hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:84)
          hudson.security.ChainedServletFilter.doFilter(ChainedServletFilter.java:76)
          hudson.security.HudsonFilter.doFilter(HudsonFilter.java:164)

          David Aldrich added a comment - Hi We are running Hudson 1.376 on a Windows XP master. Hudson currently runs as a Windows service under my user account. We have a matrix job that I can modify without problems. However, if another internal user accesses Hudson (with IE8) and modifies that job (we have no security set-up) she gets an exception when she saves the job. This is a recent problem, it was working fine a few weeks back. Please see stack trace below. I wonder if the exception I am seeing is associated with this JIRA issue? Best regards David ============================================ type Exception report message description The server encountered an internal error () that prevented it from fulfilling this request. exception javax.servlet.ServletException org.kohsuke.stapler.Stapler.invoke(Stapler.java:569) org.kohsuke.stapler.MetaClass$7.doDispatch(MetaClass.java:219) org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:30) org.kohsuke.stapler.Stapler.invoke(Stapler.java:534) org.kohsuke.stapler.Stapler.invoke(Stapler.java:450) org.kohsuke.stapler.Stapler.service(Stapler.java:132) javax.servlet.http.HttpServlet.service(HttpServlet.java:729) hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:94) hudson.util.PluginServletFilter.doFilter(PluginServletFilter.java:86) hudson.security.csrf.CrumbFilter.doFilter(CrumbFilter.java:47) hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:84) hudson.security.ChainedServletFilter.doFilter(ChainedServletFilter.java:76) hudson.security.HudsonFilter.doFilter(HudsonFilter.java:164) root cause java.lang.NullPointerException java.util.ArrayList.<init>(Unknown Source) hudson.matrix.Axis.<init>(Axis.java:74) hudson.matrix.LabelAxis.<init>(LabelAxis.java:40) sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source) sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source) java.lang.reflect.Constructor.newInstance(Unknown Source) org.kohsuke.stapler.RequestImpl.invokeConstructor(RequestImpl.java:409) org.kohsuke.stapler.RequestImpl.bindJSON(RequestImpl.java:355) hudson.model.Descriptor.newInstance(Descriptor.java:479) hudson.model.Descriptor.newInstancesFromHeteroList(Descriptor.java:756) hudson.util.DescribableList.rebuildHetero(DescribableList.java:171) hudson.matrix.MatrixProject.submit(MatrixProject.java:563) hudson.model.Job.doConfigSubmit(Job.java:1062) hudson.model.AbstractProject.doConfigSubmit(AbstractProject.java:578) sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) java.lang.reflect.Method.invoke(Unknown Source) org.kohsuke.stapler.Function$InstanceFunction.invoke(Function.java:259) org.kohsuke.stapler.Function.bindAndInvoke(Function.java:126) org.kohsuke.stapler.Function.bindAndInvokeAndServeResponse(Function.java:65) org.kohsuke.stapler.MetaClass$1.doDispatch(MetaClass.java:79) org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:30) org.kohsuke.stapler.Stapler.invoke(Stapler.java:534) org.kohsuke.stapler.MetaClass$7.doDispatch(MetaClass.java:219) org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:30) org.kohsuke.stapler.Stapler.invoke(Stapler.java:534) org.kohsuke.stapler.Stapler.invoke(Stapler.java:450) org.kohsuke.stapler.Stapler.service(Stapler.java:132) javax.servlet.http.HttpServlet.service(HttpServlet.java:729) hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:94) hudson.util.PluginServletFilter.doFilter(PluginServletFilter.java:86) hudson.security.csrf.CrumbFilter.doFilter(CrumbFilter.java:47) hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:84) hudson.security.ChainedServletFilter.doFilter(ChainedServletFilter.java:76) hudson.security.HudsonFilter.doFilter(HudsonFilter.java:164)

          Dirk Haun added a comment -

          With Hudson 1.377, when trying to change the settings for a Matrix Job, we are now getting:

          java.lang.RuntimeException: Failed to instantiate class hudson.matrix.LabelAxis from

          {"kind":"hudson.matrix.LabelAxis$DescriptorImpl","name":"label","stapler-class":"hudson.matrix.LabelAxis"}

          at hudson.model.Descriptor.newInstance(Descriptor.java:497)
          at hudson.model.Descriptor.newInstancesFromHeteroList(Descriptor.java:767)
          at hudson.util.DescribableList.rebuildHetero(DescribableList.java:171)
          at hudson.matrix.MatrixProject.submit(MatrixProject.java:596)
          at hudson.model.Job.doConfigSubmit(Job.java:1062)
          at hudson.model.AbstractProject.doConfigSubmit(AbstractProject.java:581)
          at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
          at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
          at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
          at java.lang.reflect.Method.invoke(Method.java:597)
          at org.kohsuke.stapler.Function$InstanceFunction.invoke(Function.java:259)
          at org.kohsuke.stapler.Function.bindAndInvoke(Function.java:126)
          at org.kohsuke.stapler.Function.bindAndInvokeAndServeResponse(Function.java:65)
          at org.kohsuke.stapler.MetaClass$1.doDispatch(MetaClass.java:79)
          at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:30)
          at org.kohsuke.stapler.Stapler.invoke(Stapler.java:534)
          at org.kohsuke.stapler.MetaClass$7.doDispatch(MetaClass.java:219)
          at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:30)
          at org.kohsuke.stapler.Stapler.invoke(Stapler.java:534)
          at org.kohsuke.stapler.MetaClass$7.doDispatch(MetaClass.java:219)
          at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:30)
          at org.kohsuke.stapler.Stapler.invoke(Stapler.java:534)
          at org.kohsuke.stapler.Stapler.invoke(Stapler.java:450)
          at org.kohsuke.stapler.Stapler.service(Stapler.java:132)
          at javax.servlet.http.HttpServlet.service(HttpServlet.java:45)
          at winstone.ServletConfiguration.execute(ServletConfiguration.java:249)
          at winstone.RequestDispatcher.forward(RequestDispatcher.java:335)
          at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:378)
          at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:94)
          at hudson.plugins.greenballs.GreenBallFilter.doFilter(GreenBallFilter.java:51)
          at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:97)
          at hudson.util.PluginServletFilter.doFilter(PluginServletFilter.java:86)
          at winstone.FilterConfiguration.execute(FilterConfiguration.java:195)
          at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:368)
          at hudson.security.csrf.CrumbFilter.doFilter(CrumbFilter.java:47)
          at winstone.FilterConfiguration.execute(FilterConfiguration.java:195)
          at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:368)
          at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:84)
          at hudson.security.UnwrapSecurityExceptionFilter.doFilter(UnwrapSecurityExceptionFilter.java:51)
          at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
          at org.acegisecurity.ui.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:166)
          at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
          at org.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFilter(AnonymousProcessingFilter.java:125)
          at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
          at org.acegisecurity.ui.rememberme.RememberMeProcessingFilter.doFilter(RememberMeProcessingFilter.java:142)
          at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
          at org.acegisecurity.ui.AbstractProcessingFilter.doFilter(AbstractProcessingFilter.java:271)
          at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
          at org.acegisecurity.ui.basicauth.BasicProcessingFilter.doFilter(BasicProcessingFilter.java:173)
          at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
          at org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(HttpSessionContextIntegrationFilter.java:249)
          at hudson.security.HttpSessionContextIntegrationFilter2.doFilter(HttpSessionContextIntegrationFilter2.java:66)
          at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
          at hudson.security.ChainedServletFilter.doFilter(ChainedServletFilter.java:76)
          at hudson.security.HudsonFilter.doFilter(HudsonFilter.java:164)
          at winstone.FilterConfiguration.execute(FilterConfiguration.java:195)
          at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:368)
          at winstone.RequestDispatcher.forward(RequestDispatcher.java:333)
          at winstone.RequestHandlerThread.processRequest(RequestHandlerThread.java:244)
          at winstone.RequestHandlerThread.run(RequestHandlerThread.java:150)
          at java.lang.Thread.run(Thread.java:619)
          Caused by: java.lang.NullPointerException
          at java.util.ArrayList.(ArrayList.java:131)
          at hudson.matrix.Axis.(Axis.java:74)
          at hudson.matrix.LabelAxis.(LabelAxis.java:40)
          at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
          at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
          at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
          at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
          at org.kohsuke.stapler.RequestImpl.invokeConstructor(RequestImpl.java:409)
          at org.kohsuke.stapler.RequestImpl.bindJSON(RequestImpl.java:355)
          at hudson.model.Descriptor.newInstance(Descriptor.java:488)
          ... 60 more

          Dirk Haun added a comment - With Hudson 1.377, when trying to change the settings for a Matrix Job, we are now getting: java.lang.RuntimeException: Failed to instantiate class hudson.matrix.LabelAxis from {"kind":"hudson.matrix.LabelAxis$DescriptorImpl","name":"label","stapler-class":"hudson.matrix.LabelAxis"} at hudson.model.Descriptor.newInstance(Descriptor.java:497) at hudson.model.Descriptor.newInstancesFromHeteroList(Descriptor.java:767) at hudson.util.DescribableList.rebuildHetero(DescribableList.java:171) at hudson.matrix.MatrixProject.submit(MatrixProject.java:596) at hudson.model.Job.doConfigSubmit(Job.java:1062) at hudson.model.AbstractProject.doConfigSubmit(AbstractProject.java:581) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.kohsuke.stapler.Function$InstanceFunction.invoke(Function.java:259) at org.kohsuke.stapler.Function.bindAndInvoke(Function.java:126) at org.kohsuke.stapler.Function.bindAndInvokeAndServeResponse(Function.java:65) at org.kohsuke.stapler.MetaClass$1.doDispatch(MetaClass.java:79) at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:30) at org.kohsuke.stapler.Stapler.invoke(Stapler.java:534) at org.kohsuke.stapler.MetaClass$7.doDispatch(MetaClass.java:219) at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:30) at org.kohsuke.stapler.Stapler.invoke(Stapler.java:534) at org.kohsuke.stapler.MetaClass$7.doDispatch(MetaClass.java:219) at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:30) at org.kohsuke.stapler.Stapler.invoke(Stapler.java:534) at org.kohsuke.stapler.Stapler.invoke(Stapler.java:450) at org.kohsuke.stapler.Stapler.service(Stapler.java:132) at javax.servlet.http.HttpServlet.service(HttpServlet.java:45) at winstone.ServletConfiguration.execute(ServletConfiguration.java:249) at winstone.RequestDispatcher.forward(RequestDispatcher.java:335) at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:378) at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:94) at hudson.plugins.greenballs.GreenBallFilter.doFilter(GreenBallFilter.java:51) at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:97) at hudson.util.PluginServletFilter.doFilter(PluginServletFilter.java:86) at winstone.FilterConfiguration.execute(FilterConfiguration.java:195) at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:368) at hudson.security.csrf.CrumbFilter.doFilter(CrumbFilter.java:47) at winstone.FilterConfiguration.execute(FilterConfiguration.java:195) at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:368) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:84) at hudson.security.UnwrapSecurityExceptionFilter.doFilter(UnwrapSecurityExceptionFilter.java:51) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87) at org.acegisecurity.ui.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:166) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87) at org.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFilter(AnonymousProcessingFilter.java:125) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87) at org.acegisecurity.ui.rememberme.RememberMeProcessingFilter.doFilter(RememberMeProcessingFilter.java:142) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87) at org.acegisecurity.ui.AbstractProcessingFilter.doFilter(AbstractProcessingFilter.java:271) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87) at org.acegisecurity.ui.basicauth.BasicProcessingFilter.doFilter(BasicProcessingFilter.java:173) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87) at org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(HttpSessionContextIntegrationFilter.java:249) at hudson.security.HttpSessionContextIntegrationFilter2.doFilter(HttpSessionContextIntegrationFilter2.java:66) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87) at hudson.security.ChainedServletFilter.doFilter(ChainedServletFilter.java:76) at hudson.security.HudsonFilter.doFilter(HudsonFilter.java:164) at winstone.FilterConfiguration.execute(FilterConfiguration.java:195) at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:368) at winstone.RequestDispatcher.forward(RequestDispatcher.java:333) at winstone.RequestHandlerThread.processRequest(RequestHandlerThread.java:244) at winstone.RequestHandlerThread.run(RequestHandlerThread.java:150) at java.lang.Thread.run(Thread.java:619) Caused by: java.lang.NullPointerException at java.util.ArrayList.(ArrayList.java:131) at hudson.matrix.Axis.(Axis.java:74) at hudson.matrix.LabelAxis.(LabelAxis.java:40) at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27) at java.lang.reflect.Constructor.newInstance(Constructor.java:513) at org.kohsuke.stapler.RequestImpl.invokeConstructor(RequestImpl.java:409) at org.kohsuke.stapler.RequestImpl.bindJSON(RequestImpl.java:355) at hudson.model.Descriptor.newInstance(Descriptor.java:488) ... 60 more

          David Aldrich added a comment -

          The problem I see (reported above) is not fixed in release 1.377.

          David Aldrich added a comment - The problem I see (reported above) is not fixed in release 1.377.

          ken_graham added a comment -

          Under hello world (task is echo hi, and nothing else enabled/selected) conditions, and no slave labels,
          a test with two out of two slaves, does not reproduce the problem,
          whereas a test with ten out of ten slaves, does reproduce the problem.

          Thought the additional information regarding reproduction of the issue might be of assistance.

          ken_graham added a comment - Under hello world (task is echo hi, and nothing else enabled/selected) conditions, and no slave labels, a test with two out of two slaves, does not reproduce the problem, whereas a test with ten out of ten slaves, does reproduce the problem. Thought the additional information regarding reproduction of the issue might be of assistance.

          Alan Harder added a comment -

          Can someone post steps to reproduce this issue in a new install of the latest Hudson release? Include your environment details (server and your browser) too... thanks.

          Alan Harder added a comment - Can someone post steps to reproduce this issue in a new install of the latest Hudson release? Include your environment details (server and your browser) too... thanks.

          ken_graham added a comment -

          Start with a clean 1.377
          // no additional plugins - no command line flags, nothing special.

          Add two slaves, specifying only the number of executors, home path, and how to connect.
          // does not seem to matter what they are or how they are connected (ssh or windows service).

          Add a Multi-configuration job.

          Select "Add Axis" then select "Slaves".
          // This should pull up a dialog box, where only Individual Nodes is expandable, if directions above were followed.

          Select all entries (should be three if directions above were followed).

          Save the job.

          The display should show three status indicators.

          Select Configure.

          Expand the "Individual Nodes" node in the Slaves dialog box.

          Note that the Master node is the only one selected.

          ken_graham added a comment - Start with a clean 1.377 // no additional plugins - no command line flags, nothing special. Add two slaves, specifying only the number of executors, home path, and how to connect. // does not seem to matter what they are or how they are connected (ssh or windows service). Add a Multi-configuration job. Select "Add Axis" then select "Slaves". // This should pull up a dialog box, where only Individual Nodes is expandable, if directions above were followed. Select all entries (should be three if directions above were followed). Save the job. The display should show three status indicators. Select Configure. Expand the "Individual Nodes" node in the Slaves dialog box. Note that the Master node is the only one selected.

          ken_graham added a comment -

          Above behavior is repeated in 1.378, with the exception that upon selecting configure after saving, no slaves are displayed as selected.

          ken_graham added a comment - Above behavior is repeated in 1.378, with the exception that upon selecting configure after saving, no slaves are displayed as selected.

          Nathan Parry added a comment -

          The last couple of comments sound similar to JENKINS-7500

          Nathan Parry added a comment - The last couple of comments sound similar to JENKINS-7500

          ircmicks added a comment -

          This issue is still reproducible on 1.384.
          Any idea when this will be fixed ?

          ircmicks added a comment - This issue is still reproducible on 1.384. Any idea when this will be fixed ?

          As of 1.398 I can no longer reproduce this problem. So I'm marking this as fixed.

          If people continue to see the problem, please post the steps to reproduce the problem, which would make it a lot easier for us to fix the problem.

          Kohsuke Kawaguchi added a comment - As of 1.398 I can no longer reproduce this problem. So I'm marking this as fixed. If people continue to see the problem, please post the steps to reproduce the problem, which would make it a lot easier for us to fix the problem.

            kohsuke Kohsuke Kawaguchi
            kofemann kofemann
            Votes:
            19 Vote for this issue
            Watchers:
            16 Start watching this issue

              Created:
              Updated:
              Resolved: