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

Jenkins http interface failure after upgrading from 2.121.1 LTS to 2.138.1 LTS version

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Fixed
    • Icon: Blocker Blocker
    • core
    • None

      Dear Colleagues,

       

      I'm working in a shared responsibility company infrastructure.

      We run Jenkins in Tomcat container.

      Last week I downloaded the latest LTS release (2.138.1) and made an upgrade like the followings:

      • I stopped the running Jenkins service
      • I made a backup about the old war file and its deployed directory
      • I deleted the old jenkins.war file and directory where Tomcat deployes the contents
      • I put the new war file into the same directory
      • I started Jenkins service

      And at the and I tried to reach the web interface but I got this error:

      java.util.MissingResourceException: Can't find resource for bundle org.jvnet.localizer.ResourceBundleHolder$ResourceBundleImpl, key ApiTokenProperty.LegacyTokenName
      at java.util.ResourceBundle.getObject(ResourceBundle.java:450)
      at java.util.ResourceBundle.getString(ResourceBundle.java:407)
      at org.jvnet.localizer.ResourceBundleHolder.format(ResourceBundleHolder.java:170)
      at jenkins.security.Messages.ApiTokenProperty_LegacyTokenName(Messages.java:57)
      at jenkins.security.apitoken.ApiTokenStore$HashedToken.buildNewFromLegacy(ApiTokenStore.java:375)
      at jenkins.security.apitoken.ApiTokenStore.addLegacyToken(ApiTokenStore.java:155)
      at jenkins.security.apitoken.ApiTokenStore.deleteAllLegacyAndGenerateNewOne(ApiTokenStore.java:141)
      at jenkins.security.apitoken.ApiTokenStore.regenerateTokenFromLegacyIfRequired(ApiTokenStore.java:135)
      at jenkins.security.ApiTokenProperty.setUser(ApiTokenProperty.java:134)
      at hudson.model.User.load(User.java:221)
      at hudson.model.User.<init>(User.java:166)
      at hudson.model.User.getOrCreate(User.java:537)
      at hudson.model.User.access$300(User.java:137)
      at hudson.model.User$AllUsers.scanAll(User.java:1175)
      Caused: java.lang.reflect.InvocationTargetException
      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      at java.lang.reflect.Method.invoke(Method.java:497)
      at hudson.init.TaskMethodFinder.invoke(TaskMethodFinder.java:104)
      Caused: java.lang.Error
      at hudson.init.TaskMethodFinder.invoke(TaskMethodFinder.java:110)
      at hudson.init.TaskMethodFinder$TaskImpl.run(TaskMethodFinder.java:175)
      at org.jvnet.hudson.reactor.Reactor.runTask(Reactor.java:296)
      at jenkins.model.Jenkins$5.runTask(Jenkins.java:1069)
      at org.jvnet.hudson.reactor.Reactor$2.run(Reactor.java:214)
      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:282)
      at jenkins.InitReactorRunner.run(InitReactorRunner.java:48)
      at jenkins.model.Jenkins.executeReactor(Jenkins.java:1103)
      at jenkins.model.Jenkins.<init>(Jenkins.java:907)
      at hudson.model.Hudson.<init>(Hudson.java:85)
      at hudson.model.Hudson.<init>(Hudson.java:81)
      at hudson.WebAppMain$3.run(WebAppMain.java:233)
      Caused: hudson.util.HudsonFailedToLoad
      at hudson.WebAppMain$3.run(WebAppMain.java:250)

       
      We are using this Jenkins through reverse proxy.

      When I stopped Jenkins service and made a restore of old war file (2.121.1 LTS) with old deployed directory everything worked again.

      This problem may relate to this new feature:
      "Replace single per-user API token with new system of multiple, revocable, unrecoverable API tokens with usage tracking."
       

      Tamas Fekete

            fektom Tamas Fekete
            fektom Tamas Fekete
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated:
              Resolved: