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.

    • Icon: Bug Bug
    • Resolution: Not A Defect
    • Icon: Blocker Blocker
    • saml-plugin
    • 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

      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)

          [JENKINS-49148] Upgrade from 2.89.2 to 2.89.3 and received SAML errors during boot up.

          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.

          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.

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

          Ivan Fernandez Calvo added a comment - How did you detect it? Did you see a monitor in Manage Jenkins warning about incompatible versions?

          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.

          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.

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

              Created:
              Updated:
              Resolved: