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

StackOverflowError parsing Maven POM

    Details

    • Type: Bug
    • Status: Resolved (View Workflow)
    • Priority: Critical
    • Resolution: Fixed
    • Component/s: core, maven-plugin
    • Labels:
      None
    • Environment:
      os.name Windows Server 2012 R2 (64-bit)
      java.vendor Oracle Corporation
      java.version 1.8.0_66
      Jenkins ver. 2.32.2
      maven-plugin 2.13
    • Similar Issues:

      Description

      The offending job was working fine until I updated Jenkins to 2.32.1; the problem still manifests after having further updated to Jenkins ver. 2.32.2. I have other Jenkins jobs which run fine on the same master+slave (both running on the same machine) and can't discern any significant differences in their configuration.

      The stack trace is:
      Parsing POMs
      ERROR: Failed to parse POMs
      java.io.IOException: remote file operation failed: C:\jenkins\workspace\object-api\build-objectapi-codegen\codegen at hudson.remoting.Channel@a7fd77:Channel to /10.100.87.126: java.io.IOException: Remote call on Channel to /10.100.87.126 failed
      at hudson.FilePath.act(FilePath.java:992)
      at hudson.FilePath.act(FilePath.java:974)
      at hudson.maven.MavenModuleSetBuild$MavenModuleSetBuildExecution.parsePoms(MavenModuleSetBuild.java:960)
      at hudson.maven.MavenModuleSetBuild$MavenModuleSetBuildExecution.doRun(MavenModuleSetBuild.java:679)
      at hudson.model.AbstractBuild$AbstractBuildExecution.run(AbstractBuild.java:534)
      at hudson.model.Run.execute(Run.java:1728)
      at hudson.maven.MavenModuleSetBuild.run(MavenModuleSetBuild.java:531)
      at hudson.model.ResourceController.execute(ResourceController.java:98)
      at hudson.model.Executor.run(Executor.java:404)
      Caused by: java.io.IOException: Remote call on Channel to /10.100.87.126 failed
      at hudson.remoting.Channel.call(Channel.java:830)
      at hudson.FilePath.act(FilePath.java:985)
      ... 8 more
      Caused by: java.lang.StackOverflowError
      at sun.reflect.GeneratedMethodAccessor15.invoke(Unknown Source)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      at java.lang.reflect.Method.invoke(Method.java:606)
      at com.google.inject.internal.DelegatingInvocationHandler.invoke(DelegatingInvocationHandler.java:50)
      at com.sun.proxy.$Proxy30.lookup(Unknown Source)
      at sun.reflect.GeneratedMethodAccessor15.invoke(Unknown Source)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      at java.lang.reflect.Method.invoke(Method.java:606)
      at com.google.inject.internal.DelegatingInvocationHandler.invoke(DelegatingInvocationHandler.java:50)
      at com.sun.proxy.$Proxy30.lookup(Unknown Source)
      ... unbounded recursion ...
      at sun.reflect.GeneratedMethodAccessor15.invoke(Unknown Source)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      at java.lang.reflect.Method.invoke(Method.java:606)
      at com.google.inject.internal.DelegatingInvocationHandler.invoke(DelegatingInvocationHandler.java:50)
      at ......remote call to Channel to /10.100.87.126(Native Method)
      at hudson.remoting.Channel.attachCallSiteStackTrace(Channel.java:1537)
      at hudson.remoting.UserResponse.retrieve(UserRequest.java:253)
      at hudson.remoting.Channel.call(Channel.java:822)
      ... 9 more

      The stack trace is near identical to JENKINS-26601, which was reported against Jenkins 1.598 and resolved on 2015/Jan/28.

        Attachments

          Issue Links

            Activity

            Hide
            danielbeck Daniel Beck added a comment -

            until I updated Jenkins to 2.32.1

            Doesn't mean anything unless you mention what version you were running before.

            Show
            danielbeck Daniel Beck added a comment - until I updated Jenkins to 2.32.1 Doesn't mean anything unless you mention what version you were running before.
            Hide
            aheritier Arnaud Héritier added a comment -

            Any reason to not use the version 2.14 ?

            Show
            aheritier Arnaud Héritier added a comment - Any reason to not use the version 2.14 ?
            Hide
            adrianp Adrian Price added a comment - - edited

            Daniel Beck until I updated Jenkins to 2.32.1
            Doesn't mean anything unless you mention what version you were running before.

            Unfortunately, in updating from 2.32.1 to 2.32.2, any evidence as to the version that was installed prior to 2.32.1 was destroyed, because 2.32.2 overwrote jenkins.war.bak. I can't find any kind of installation history in the UI under 'Manage Jenkins', nor does there appear to be any kind of installation log file, nor is there any mention of 2.32.* in any of the error logs. It's a shame that Jenkins does not record these version bumps anywhere given that this is apparently vital diagnostic information.

            I seem to recall doing another such update a few months ago, but there I'm not aware of any way to discover exactly when that was. Sorry I can't be any more precise than this.

            Arnaud Héritier I'd prefer not to downgrade if at all possible, as this can lead to loss of configuration information and/or plug-in compatibility problems.

            Show
            adrianp Adrian Price added a comment - - edited Daniel Beck until I updated Jenkins to 2.32.1 Doesn't mean anything unless you mention what version you were running before. Unfortunately, in updating from 2.32.1 to 2.32.2, any evidence as to the version that was installed prior to 2.32.1 was destroyed, because 2.32.2 overwrote jenkins.war.bak. I can't find any kind of installation history in the UI under 'Manage Jenkins', nor does there appear to be any kind of installation log file, nor is there any mention of 2.32.* in any of the error logs. It's a shame that Jenkins does not record these version bumps anywhere given that this is apparently vital diagnostic information. I seem to recall doing another such update a few months ago, but there I'm not aware of any way to discover exactly when that was. Sorry I can't be any more precise than this. Arnaud Héritier I'd prefer not to downgrade if at all possible, as this can lead to loss of configuration information and/or plug-in compatibility problems.
            Hide
            aheritier Arnaud Héritier added a comment -

            Adrian Price I was talking about the maven plugin . You are using the version 2.13 and 2.14 is out for a several months. 2.15 is in progress

            Show
            aheritier Arnaud Héritier added a comment - Adrian Price I was talking about the maven plugin . You are using the version 2.13 and 2.14 is out for a several months. 2.15 is in progress
            Hide
            aheritier Arnaud Héritier added a comment -

            2.15.1 is out. If you can tell me if you have the same issue with it ...

            Show
            aheritier Arnaud Héritier added a comment - 2.15.1 is out. If you can tell me if you have the same issue with it ...
            Hide
            aheritier Arnaud Héritier added a comment -

            I hope it's not related to our upgrade to guice but it is strange it was already in 2.32.1
            https://github.com/jenkinsci/jenkins/commit/f64a2231396ad8de1d164bce20dc31751714b607

            https://github.com/google/guice/issues/899 was closed but I don't understand if the fix was done in guice 4 final or sisu cc Jesse Glick

            Perhaps the upgrade/cleanup of the maven-plugin 2.15 could help here

            Show
            aheritier Arnaud Héritier added a comment - I hope it's not related to our upgrade to guice but it is strange it was already in 2.32.1 https://github.com/jenkinsci/jenkins/commit/f64a2231396ad8de1d164bce20dc31751714b607 https://github.com/google/guice/issues/899 was closed but I don't understand if the fix was done in guice 4 final or sisu cc Jesse Glick Perhaps the upgrade/cleanup of the maven-plugin 2.15 could help here
            Hide
            jglick Jesse Glick added a comment -

            I don't understand if the fix was done in guice 4 final or sisu

            Neither—the bug was on the Jenkins side, using an old component.

            Show
            jglick Jesse Glick added a comment - I don't understand if the fix was done in guice 4 final or sisu Neither—the bug was on the Jenkins side, using an old component.
            Hide
            aheritier Arnaud Héritier added a comment -

            thanks Jesse Glick
            Let us know Adrian Price if you have the problem with Jenkins 2.32.1 and maven plugin 2.15.1 please

            Show
            aheritier Arnaud Héritier added a comment - thanks Jesse Glick Let us know Adrian Price if you have the problem with Jenkins 2.32.1 and maven plugin 2.15.1 please
            Hide
            adrianp Adrian Price added a comment - - edited

            One detail I didn't include in my original description: on Jenkins 2.32.2, I had actually been able to resolve the issue by specifying explicit values for Source Code Management > Subversion > Modules > Local module directory. These were originally blank, relying on the behaviour described in the embedded help panel whereby a blank local module directory is checked out to a directory whose name is the last path segment. Configured thus, the job was working fine prior to Maven 2.32.1 but broke in that release. Subsequently, I was able to get the job building again by specifying an explicit local module directory value for each repository URL.

            Now, running Jenkins 2.32.1 and Maven Integration Plugin 2.15.1, with the explicit local module directory settings once again blank, the job now runs. So whatever the problem was, it now appears to be resolved with the latest and greatest of everything installed. Many thanks for your assistance.

            Show
            adrianp Adrian Price added a comment - - edited One detail I didn't include in my original description: on Jenkins 2.32.2, I had actually been able to resolve the issue by specifying explicit values for Source Code Management > Subversion > Modules > Local module directory. These were originally blank, relying on the behaviour described in the embedded help panel whereby a blank local module directory is checked out to a directory whose name is the last path segment. Configured thus, the job was working fine prior to Maven 2.32.1 but broke in that release. Subsequently, I was able to get the job building again by specifying an explicit local module directory value for each repository URL. Now, running Jenkins 2.32.1 and Maven Integration Plugin 2.15.1, with the explicit local module directory settings once again blank, the job now runs. So whatever the problem was, it now appears to be resolved with the latest and greatest of everything installed. Many thanks for your assistance.
            Hide
            aheritier Arnaud Héritier added a comment -

            Did you upgrade the subversion plugin between 2.32.1 and 2.32.2 (I imagine no)
            I'm not sure what created / solved this issue but I'll keep an eye on it. thx

            Show
            aheritier Arnaud Héritier added a comment - Did you upgrade the subversion plugin between 2.32.1 and 2.32.2 (I imagine no) I'm not sure what created / solved this issue but I'll keep an eye on it. thx
            Hide
            aheritier Arnaud Héritier added a comment - - edited

            Sum-up:

            • OK with Jenkins 2.32.1 and Maven plugin 2.13
            • KO with Jenkins 2.32.2 and Maven plugin 2.13
            • OK with Jenkins 2.32.2 and Maven plugin 2.13 + workaround: specifying explicit values for Source Code Management > Subversion > Modules > Local module directory.
            • OK with Jenkins 2.32.2 and Maven plugin 2.15.1
            Show
            aheritier Arnaud Héritier added a comment - - edited Sum-up: OK with Jenkins 2.32.1 and Maven plugin 2.13 KO with Jenkins 2.32.2 and Maven plugin 2.13 OK with Jenkins 2.32.2 and Maven plugin 2.13 + workaround: specifying explicit values for Source Code Management > Subversion > Modules > Local module directory. OK with Jenkins 2.32.2 and Maven plugin 2.15.1
            Hide
            sebg73 Sébastien Gollion added a comment -
            • KO with Jenkins 2.41 and Maven plugin 2.9
            • OK with Jenkins 2.41 and Maven plugin 2.15.1

            In my case, Maven plugin 2.15.1 solves this issue, thanks.

            Show
            sebg73 Sébastien Gollion added a comment - KO with Jenkins 2.41 and Maven plugin 2.9 OK with Jenkins 2.41 and Maven plugin 2.15.1 In my case, Maven plugin 2.15.1 solves this issue, thanks.
            Hide
            adrianp Adrian Price added a comment - - edited

            Last week when I upgraded to Maven Integration Plugin 2.14 I also upgraded all the other plug-ins, which included Subversion Plugin 2.7.1. But before I got a chance to test that combination I was called off to do some other work, then this morning I saw the comments about 2.15.1 being available so I once again upgraded all plug-ins, which fixed the problem and obviated the need for the workaround.

            The sum-up should be:

            • OK with Jenkins < 2.32.1 (not sure which) and the Maven plug-in which came with that version
            • KO with Jenkins 2.32.1 and Maven plugin 2.13
            • KO with Jenkins 2.32.2 and Maven plugin 2.13
            • OK with Jenkins 2.32.2 and Maven plugin 2.13 + workaround: specifying explicit values for Source Code Management > Subversion > Modules > Local module directory.
            • OK with Jenkins 2.32.2 and Maven plugin 2.15.1
            Show
            adrianp Adrian Price added a comment - - edited Last week when I upgraded to Maven Integration Plugin 2.14 I also upgraded all the other plug-ins, which included Subversion Plugin 2.7.1. But before I got a chance to test that combination I was called off to do some other work, then this morning I saw the comments about 2.15.1 being available so I once again upgraded all plug-ins, which fixed the problem and obviated the need for the workaround. The sum-up should be: OK with Jenkins < 2.32.1 (not sure which) and the Maven plug-in which came with that version KO with Jenkins 2.32.1 and Maven plugin 2.13 KO with Jenkins 2.32.2 and Maven plugin 2.13 OK with Jenkins 2.32.2 and Maven plugin 2.13 + workaround: specifying explicit values for Source Code Management > Subversion > Modules > Local module directory. OK with Jenkins 2.32.2 and Maven plugin 2.15.1
            Hide
            aheritier Arnaud Héritier added a comment -

            thx for you feedback Sébastien Gollion
            Maven plugin users don't hesitate to comment here like Sébastien if you have also this error. It may help us to better identify the the change/issue even if it is fixed by the latest version of the plugin (from my POV it smells the issue related to the guice/sisu update in core and maven plugin cc Oleg Nenashev)

            Show
            aheritier Arnaud Héritier added a comment - thx for you feedback Sébastien Gollion Maven plugin users don't hesitate to comment here like Sébastien if you have also this error. It may help us to better identify the the change/issue even if it is fixed by the latest version of the plugin (from my POV it smells the issue related to the guice/sisu update in core and maven plugin cc Oleg Nenashev )
            Hide
            aheritier Arnaud Héritier added a comment - - edited

            The sum-up:

            • OK with Jenkins < 2.32.1 (not sure which) and the Maven plug-in which came with that version
            • KO with Jenkins 2.32.1 and Maven plugin 2.13
            • KO with Jenkins 2.32.2 and Maven plugin 2.13
            • OK with Jenkins 2.32.2 and Maven plugin 2.13 + workaround: specifying explicit values for Source Code Management > Subversion > Modules > Local module directory.
            • OK with Jenkins 2.32.2 and Maven plugin 2.15.1
            • KO with Jenkins 2.41 and Maven plugin 2.9
            • OK with Jenkins 2.41 and Maven plugin 2.15.1

            Upgrade to Guice Final 4.0 was done in Jenkins 2.28

            Show
            aheritier Arnaud Héritier added a comment - - edited The sum-up: OK with Jenkins < 2.32.1 (not sure which) and the Maven plug-in which came with that version KO with Jenkins 2.32.1 and Maven plugin 2.13 KO with Jenkins 2.32.2 and Maven plugin 2.13 OK with Jenkins 2.32.2 and Maven plugin 2.13 + workaround: specifying explicit values for Source Code Management > Subversion > Modules > Local module directory. OK with Jenkins 2.32.2 and Maven plugin 2.15.1 KO with Jenkins 2.41 and Maven plugin 2.9 OK with Jenkins 2.41 and Maven plugin 2.15.1 Upgrade to Guice Final 4.0 was done in Jenkins 2.28
            Hide
            aheritier Arnaud Héritier added a comment -

            Added in 2.15.1 changelog

            Show
            aheritier Arnaud Héritier added a comment - Added in 2.15.1 changelog
            Hide
            girishkg Girish KG added a comment -

            This issue is still exist and can be re-produced in:

            Jenkins-2.46.2 and Maven Integration plugin v2.17

            Show
            girishkg Girish KG added a comment - This issue is still exist and can be re-produced in: Jenkins-2.46.2 and Maven Integration plugin v2.17

              People

              • Assignee:
                aheritier Arnaud Héritier
                Reporter:
                adrianp Adrian Price
              • Votes:
                0 Vote for this issue
                Watchers:
                7 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: