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

Upgrade from 2.89.2 to 2.89.3 and received SAML errors during boot up.

    Details

    • Type: Bug
    • Status: Resolved (View Workflow)
    • Priority: Blocker
    • Resolution: Not A Defect
    • Component/s: saml-plugin
    • Labels:
    • Environment:
      Windows Server 2008 R2 64-Bit
      Java JDK v1.8.0_121X64
      SAML Plugin v1.0.4
      Jenkins v2.89.2 upgrading to v2.89.3
    • Similar Issues:

      Description

      Receive the following after server restart during upgrade process from v2.89.2 to v2.89.3:

      Error
      com.thoughtworks.xstream.mapper.CannotResolveClassException: org.jenkinsci.plugins.saml.SamlSecurityRealm
      at com.thoughtworks.xstream.mapper.DefaultMapper.realClass(DefaultMapper.java:79)
      at com.thoughtworks.xstream.mapper.MapperWrapper.realClass(MapperWrapper.java:30)
      at com.thoughtworks.xstream.mapper.DynamicProxyMapper.realClass(DynamicProxyMapper.java:55)
      at com.thoughtworks.xstream.mapper.MapperWrapper.realClass(MapperWrapper.java:30)
      at com.thoughtworks.xstream.mapper.PackageAliasingMapper.realClass(PackageAliasingMapper.java:88)
      at com.thoughtworks.xstream.mapper.MapperWrapper.realClass(MapperWrapper.java:30)
      at com.thoughtworks.xstream.mapper.ClassAliasingMapper.realClass(ClassAliasingMapper.java:79)
      at com.thoughtworks.xstream.mapper.MapperWrapper.realClass(MapperWrapper.java:30)
      at com.thoughtworks.xstream.mapper.MapperWrapper.realClass(MapperWrapper.java:30)
      at com.thoughtworks.xstream.mapper.MapperWrapper.realClass(MapperWrapper.java:30)
      at com.thoughtworks.xstream.mapper.MapperWrapper.realClass(MapperWrapper.java:30)
      at com.thoughtworks.xstream.mapper.MapperWrapper.realClass(MapperWrapper.java:30)
      at com.thoughtworks.xstream.mapper.MapperWrapper.realClass(MapperWrapper.java:30)
      at com.thoughtworks.xstream.mapper.ArrayMapper.realClass(ArrayMapper.java:74)
      at com.thoughtworks.xstream.mapper.MapperWrapper.realClass(MapperWrapper.java:30)
      at com.thoughtworks.xstream.mapper.MapperWrapper.realClass(MapperWrapper.java:30)
      at com.thoughtworks.xstream.mapper.MapperWrapper.realClass(MapperWrapper.java:30)
      at com.thoughtworks.xstream.mapper.MapperWrapper.realClass(MapperWrapper.java:30)
      at com.thoughtworks.xstream.mapper.MapperWrapper.realClass(MapperWrapper.java:30)
      at com.thoughtworks.xstream.mapper.MapperWrapper.realClass(MapperWrapper.java:30)
      at com.thoughtworks.xstream.mapper.SecurityMapper.realClass(SecurityMapper.java:71)
      at com.thoughtworks.xstream.mapper.MapperWrapper.realClass(MapperWrapper.java:30)
      at com.thoughtworks.xstream.mapper.MapperWrapper.realClass(MapperWrapper.java:30)
      at com.thoughtworks.xstream.mapper.MapperWrapper.realClass(MapperWrapper.java:30)
      at hudson.util.XStream2$CompatibilityMapper.realClass(XStream2.java:285)
      at com.thoughtworks.xstream.mapper.MapperWrapper.realClass(MapperWrapper.java:30)
      at hudson.util.xstream.MapperDelegate.realClass(MapperDelegate.java:43)
      at com.thoughtworks.xstream.mapper.MapperWrapper.realClass(MapperWrapper.java:30)
      at com.thoughtworks.xstream.mapper.CachingMapper.realClass(CachingMapper.java:48)
      at hudson.util.RobustReflectionConverter.determineType(RobustReflectionConverter.java:461)
      at hudson.util.RobustReflectionConverter.doUnmarshal(RobustReflectionConverter.java:327)
      Caused: jenkins.util.xstream.CriticalXStreamException: org.jenkinsci.plugins.saml.SamlSecurityRealm : org.jenkinsci.plugins.saml.SamlSecurityRealm
      ---- Debugging information ----
      message : org.jenkinsci.plugins.saml.SamlSecurityRealm
      cause-exception : com.thoughtworks.xstream.mapper.CannotResolveClassException
      cause-message : org.jenkinsci.plugins.saml.SamlSecurityRealm
      class : hudson.model.Hudson
      required-type : hudson.model.Hudson
      converter-type : hudson.util.RobustReflectionConverter
      path : /hudson/securityRealm
      line number : 24
      version : not available
      -------------------------------
      at hudson.util.RobustReflectionConverter.doUnmarshal(RobustReflectionConverter.java:356)
      at hudson.util.RobustReflectionConverter.unmarshal(RobustReflectionConverter.java:270)
      at com.thoughtworks.xstream.core.TreeUnmarshaller.convert(TreeUnmarshaller.java:72)
      at com.thoughtworks.xstream.core.AbstractReferenceUnmarshaller.convert(AbstractReferenceUnmarshaller.java:65)
      at com.thoughtworks.xstream.core.TreeUnmarshaller.convertAnother(TreeUnmarshaller.java:66)
      at com.thoughtworks.xstream.core.TreeUnmarshaller.convertAnother(TreeUnmarshaller.java:50)
      at com.thoughtworks.xstream.core.TreeUnmarshaller.start(TreeUnmarshaller.java:134)
      at com.thoughtworks.xstream.core.AbstractTreeMarshallingStrategy.unmarshal(AbstractTreeMarshallingStrategy.java:32)
      at com.thoughtworks.xstream.XStream.unmarshal(XStream.java:1189)
      at hudson.util.XStream2.unmarshal(XStream2.java:114)
      at com.thoughtworks.xstream.XStream.unmarshal(XStream.java:1173)
      at hudson.XmlFile.unmarshal(XmlFile.java:167)
      Caused: java.io.IOException: Unable to read D:\SCM\Apps\Jenkins\config.xml
      at hudson.XmlFile.unmarshal(XmlFile.java:169)
      at jenkins.model.Jenkins.loadConfig(Jenkins.java:3063)
      at jenkins.model.Jenkins.access$1200(Jenkins.java:304)
      at jenkins.model.Jenkins$14.run(Jenkins.java:3081)
      at org.jvnet.hudson.reactor.TaskGraphBuilder$TaskImpl.run(TaskGraphBuilder.java:169)
      at org.jvnet.hudson.reactor.Reactor.runTask(Reactor.java:282)
      at jenkins.model.Jenkins$5.runTask(Jenkins.java:1065)
      at org.jvnet.hudson.reactor.Reactor$2.run(Reactor.java:210)
      at org.jvnet.hudson.reactor.Reactor$Node.run(Reactor.java:117)
      at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
      at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
      at java.lang.Thread.run(Thread.java:745)
      Caused: org.jvnet.hudson.reactor.ReactorException
      at org.jvnet.hudson.reactor.Reactor.execute(Reactor.java:269)
      at jenkins.InitReactorRunner.run(InitReactorRunner.java:47)
      at jenkins.model.Jenkins.executeReactor(Jenkins.java:1099)
      at jenkins.model.Jenkins.<init>(Jenkins.java:904)
      at hudson.model.Hudson.<init>(Hudson.java:86)
      at hudson.model.Hudson.<init>(Hudson.java:82)
      at hudson.WebAppMain$3.run(WebAppMain.java:233)
      Caused: hudson.util.HudsonFailedToLoad
      at hudson.WebAppMain$3.run(WebAppMain.java:250)

        Attachments

          Activity

          Hide
          jburrows John Burrows added a comment -

          Found how to fix the issue, looks like an older bouncycastle-api plugin is installed with 2.89.3, and you need to replace it with a new one and it gets rid of the issue.
          replaced bouncycastle-api.jpi with v2.16.2 and was able to get it to work properly.

          Show
          jburrows John Burrows added a comment - Found how to fix the issue, looks like an older bouncycastle-api plugin is installed with 2.89.3, and you need to replace it with a new one and it gets rid of the issue. replaced bouncycastle-api.jpi with v2.16.2 and was able to get it to work properly.
          Hide
          ifernandezcalvo Ivan Fernandez Calvo added a comment -

          How did you detect it? Did you see a monitor in Manage Jenkins warning about incompatible versions?

          Show
          ifernandezcalvo Ivan Fernandez Calvo added a comment - How did you detect it? Did you see a monitor in Manage Jenkins warning about incompatible versions?
          Hide
          jburrows John Burrows added a comment -

          I found the entry in the jenkins.err.log file that showed up after the update when rebooting, stating that the SAML plugin could not load due to the bouncycastle-api plugin was at an older version and needed to be updated.

          This has happened multiple times so far with updates to 2.89.3, so either the bouncycastle-api plugin is included with 2.89.3 and should be udpated or the dependency on this plugin from somewhere else needs to force an update.

          The SAML plugin has not been updated for quite a while, so it is not at fault.

          Show
          jburrows John Burrows added a comment - I found the entry in the jenkins.err.log file that showed up after the update when rebooting, stating that the SAML plugin could not load due to the bouncycastle-api plugin was at an older version and needed to be updated. This has happened multiple times so far with updates to 2.89.3, so either the bouncycastle-api plugin is included with 2.89.3 and should be udpated or the dependency on this plugin from somewhere else needs to force an update. The SAML plugin has not been updated for quite a while, so it is not at fault.

            People

            • Assignee:
              ifernandezcalvo Ivan Fernandez Calvo
              Reporter:
              jburrows John Burrows
            • Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: