com.atlassian.servicedesk.bootstrap.upgrade.UnsatisfiedVersionRequirementException: '2.5.4' version of Service Desk cannot be upgraded to '3.2.0-038-01'. Upgrade to '3.0.0' <= <version> < '3.2.0' first.

Atlassian JIRA | Andrew Heinzer [Atlassian] | 3 months ago
  1. 0

    h3. Summary Upgrading Service desk to 3.2 from a version <= 2.5.4 breaks project navigation sidebar h3. Environment When attempting to upgrade a Service Desk instance from a version <= 2.5.4 directly to 3.2.0 h3. Steps to Reproduce # Create XML backup from existing JIRA 6.4.x instance running Service Desk 2.5.4 # Install a fresh instance of Service Desk 3.2.0 # Use the 'import existing data' link to restore this XML backup # Navigate to a Service Desk Project, and look at the side bar for project navigation h3. Expected Results Given that the [official release notes for Service Desk 3.2.0|https://confluence.atlassian.com/servicedesk/jira-service-desk-3-2-x-release-notes-830281732.html] indicate that upgrades must have upgraded to Service Desk 3.0 first, the expected results should be that the JIRA upgrade completes, but the Service Desk upgrade tasks should not have been run on this instance. h3. Actual Results The Service Desk upgrade tasks appear to have been run anyways, despite stacktraces indicating that Service Desk cannot be upgraded {code:borderStyle=solid} ********************************************************************************* JIRA ServiceDesk v3.2.0-038-01 #DevVersion built 2016-08-23T20:22:33.076-07:00 - Version requirement for upgrade is not satisfied. It is unsafe to proceed. ********************************************************************************* 2016-08-26 11:20:59,929 JIRA-Bootstrap ERROR [c.a.servicedesk.bootstrap.lifecycle] '2.5.4' version of Service Desk cannot be upgraded to '3.2.0-038-01'. Upgrade to '3.0.0' <= <version> < '3.2.0' first. com.atlassian.servicedesk.bootstrap.upgrade.UnsatisfiedVersionRequirementException: '2.5.4' version of Service Desk cannot be upgraded to '3.2.0-038-01'. Upgrade to '3.0.0' <= <version> < '3.2.0' first. at com.atlassian.servicedesk.bootstrap.upgrade.UpgradeRequirementsChecker.checkVersionRequirementForUpgrade(UpgradeRequirementsChecker.java:25) at com.atlassian.servicedesk.bootstrap.lifecycle.PluginLifeCycle.checkAndRunUpgrades(PluginLifeCycle.java:256) at com.atlassian.servicedesk.bootstrap.lifecycle.PluginLifeCycle.runPluginStartupSideEffectsImpl(PluginLifeCycle.java:183) at com.atlassian.servicedesk.bootstrap.lifecycle.LifecycleLock.writeImpl(LifecycleLock.java:97) at com.atlassian.servicedesk.bootstrap.lifecycle.LifecycleLock.runOnStartup(LifecycleLock.java:75) at com.atlassian.servicedesk.bootstrap.lifecycle.PluginLifeCycle.onPluginStarted(PluginLifeCycle.java:126) at com.atlassian.servicedesk.bootstrap.lifecycle.Launcher.onStartCompleted(Launcher.java:75) at com.atlassian.servicedesk.bootstrap.lifecycle.Launcher.access$000(Launcher.java:23) at com.atlassian.servicedesk.bootstrap.lifecycle.Launcher$1$1.run(Launcher.java:42) at com.atlassian.pocketknife.api.util.runners.SealedRunner.checkSeals(SealedRunner.java:111) at com.atlassian.pocketknife.api.util.runners.SealedRunner.breakSeal(SealedRunner.java:68) at com.atlassian.servicedesk.bootstrap.lifecycle.Launcher.onStart(Launcher.java:68) at com.atlassian.sal.core.lifecycle.DefaultLifecycleManager$4.consume(DefaultLifecycleManager.java:310) at com.atlassian.sal.core.lifecycle.DefaultLifecycleManager$4.consume(DefaultLifecycleManager.java:306) at com.atlassian.sal.core.lifecycle.DefaultLifecycleManager.notifyLifecyleAware(DefaultLifecycleManager.java:344) at com.atlassian.sal.core.lifecycle.DefaultLifecycleManager.notifyOnStartIfStartedAndEnabled(DefaultLifecycleManager.java:304) at com.atlassian.sal.core.lifecycle.DefaultLifecycleManager.access$300(DefaultLifecycleManager.java:50) at com.atlassian.sal.core.lifecycle.DefaultLifecycleManager$3.evaluate(DefaultLifecycleManager.java:261) at com.atlassian.sal.core.lifecycle.DefaultLifecycleManager$3.evaluate(DefaultLifecycleManager.java:257) at com.atlassian.sal.core.lifecycle.DefaultLifecycleManager.notifyLifecycleAwares(DefaultLifecycleManager.java:286) at com.atlassian.sal.core.lifecycle.DefaultLifecycleManager.notifyStartableLifecycleAwares(DefaultLifecycleManager.java:255) at com.atlassian.sal.core.lifecycle.DefaultLifecycleManager.startIfApplicationSetup(DefaultLifecycleManager.java:241) at com.atlassian.sal.core.lifecycle.DefaultLifecycleManager.start(DefaultLifecycleManager.java:230) at com.atlassian.sal.jira.lifecycle.JiraLifecycleManager.onJiraStart(JiraLifecycleManager.java:64) ... 3 filtered at java.lang.reflect.Method.invoke(Method.java:498) at com.atlassian.event.internal.SingleParameterMethodListenerInvoker.invoke(SingleParameterMethodListenerInvoker.java:36) at com.atlassian.event.internal.AsynchronousAbleEventDispatcher$1$1.run(AsynchronousAbleEventDispatcher.java:48) at com.google.common.util.concurrent.MoreExecutors$DirectExecutorService.execute(MoreExecutors.java:299) at com.atlassian.event.internal.AsynchronousAbleEventDispatcher.dispatch(AsynchronousAbleEventDispatcher.java:107) at com.atlassian.event.internal.EventPublisherImpl.invokeListeners(EventPublisherImpl.java:160) at com.atlassian.event.internal.EventPublisherImpl.publish(EventPublisherImpl.java:79) at com.atlassian.plugin.event.impl.DefaultPluginEventManager.broadcast(DefaultPluginEventManager.java:73) at com.atlassian.jira.upgrade.PluginUpgradeLauncher.start(PluginUpgradeLauncher.java:30) at com.atlassian.jira.startup.ActiveServicesLauncher.start(ActiveServicesLauncher.java:51) at com.atlassian.jira.startup.DefaultJiraLauncher.lambda$postTenantArrived$4(DefaultJiraLauncher.java:178) at com.atlassian.jira.startup.DefaultInstantUpgradeManager$StartupTask.run(DefaultInstantUpgradeManager.java:139) at com.atlassian.jira.startup.DefaultInstantUpgradeManager.runTask(DefaultInstantUpgradeManager.java:55) at com.atlassian.jira.startup.DefaultInstantUpgradeManager.doNowOrWhenInstanceBecomesActive(DefaultInstantUpgradeManager.java:42) at com.atlassian.jira.startup.DefaultJiraLauncher.postTenantArrived(DefaultJiraLauncher.java:171) at com.atlassian.jira.startup.DefaultJiraLauncher.lambda$postDBActivated$3(DefaultJiraLauncher.java:159) at com.atlassian.jira.tenancy.DefaultTenantManager.doNowOrWhenTenantArrives(DefaultTenantManager.java:55) at com.atlassian.jira.startup.DefaultJiraLauncher.postDBActivated(DefaultJiraLauncher.java:156) at com.atlassian.jira.startup.DefaultJiraLauncher.lambda$postDbLaunch$2(DefaultJiraLauncher.java:145) at com.atlassian.jira.config.database.DatabaseConfigurationManagerImpl.doNowOrEnqueue(DatabaseConfigurationManagerImpl.java:298) at com.atlassian.jira.config.database.DatabaseConfigurationManagerImpl.doNowOrWhenDatabaseActivated(DatabaseConfigurationManagerImpl.java:194) at com.atlassian.jira.startup.DefaultJiraLauncher.postDbLaunch(DefaultJiraLauncher.java:135) at com.atlassian.jira.startup.DefaultJiraLauncher.lambda$start$0(DefaultJiraLauncher.java:101) at com.atlassian.jira.util.devspeed.JiraDevSpeedTimer.run(JiraDevSpeedTimer.java:31) at com.atlassian.jira.startup.DefaultJiraLauncher.start(DefaultJiraLauncher.java:99) at com.atlassian.jira.startup.LauncherContextListener.initSlowStuff(LauncherContextListener.java:149) at java.lang.Thread.run(Thread.java:745) 2016-08-26 11:20:59,944 JIRA-Bootstrap INFO [atlassian.servicedesk.lifecycle] ********************************************************************************* JIRA ServiceDesk v3.2.0-038-01 #DevVersion built 2016-08-23T20:22:33.076-07:00 - We are now in an indeterminable state. ********************************************************************************* 2016-08-26 11:20:59,944 JIRA-Bootstrap INFO [atlassian.servicedesk.lifecycle] ********************************************************************************* JIRA ServiceDesk v3.2.0-038-01 #DevVersion built 2016-08-23T20:22:33.076-07:00 - Finished initialisation. ********************************************************************************* 2016-08-26 11:20:59,944 JIRA-Bootstrap INFO [atlassian.servicedesk.lifecycle] JIRA ServiceDesk Run History *JIRA ServiceDesk v1.2.7 (DevVersion) started at 12 Aug 2015 11:02 2016-08-26 11:21:00,007 JIRA-Bootstrap INFO [atlassian.servicedesk.lifecycle] The following JIRA ServiceDesk upgrade tasks have been run on this system UpgradeTask AO-1 started at 12 Aug 2015 11:01 within v1.2.7 (DevVersion) UpgradeTask AO-1 ended at 12 Aug 2015 11:02 within v1.2.7 (DevVersion) and took 2109 ms UpgradeTask AO-201 started at 12 Aug 2015 11:02 within v1.2.7 (DevVersion) UpgradeTask AO-201 ended at 12 Aug 2015 11:02 within v1.2.7 (DevVersion) and took 703 ms UpgradeTask AO-300 started at 12 Aug 2015 11:02 within v1.2.7 (DevVersion) UpgradeTask AO-300 ended at 12 Aug 2015 11:02 within v1.2.7 (DevVersion) and took 485 ms UpgradeTask AO-400 started at 12 Aug 2015 11:02 within v1.2.7 (DevVersion) UpgradeTask AO-400 ended at 12 Aug 2015 11:02 within v1.2.7 (DevVersion) and took 890 ms UpgradeTask AO-501 started at 12 Aug 2015 11:02 within v1.2.7 (DevVersion) UpgradeTask AO-501 ended at 12 Aug 2015 11:02 within v1.2.7 (DevVersion) and took 1594 ms UpgradeTask UPG-1 started at 12 Aug 2015 11:02 within v1.2.7 (DevVersion) UpgradeTask UPG-1 ended at 12 Aug 2015 11:02 within v1.2.7 (DevVersion) and took 0 ms UpgradeTask UPG-2 started at 12 Aug 2015 11:02 within v1.2.7 (DevVersion) UpgradeTask UPG-2 ended at 12 Aug 2015 11:02 within v1.2.7 (DevVersion) and took 16 ms UpgradeTask AO-600 started at 26 Aug 2016 11:08 within v3.2.0-038-01 (DevVersion) UpgradeTask AO-600 ended at 26 Aug 2016 11:09 within v3.2.0-038-01 (DevVersion) and took 3640 ms UpgradeTask AO-700 started at 26 Aug 2016 11:09 within v3.2.0-038-01 (DevVersion) UpgradeTask AO-700 ended at 26 Aug 2016 11:09 within v3.2.0-038-01 (DevVersion) and took 1063 ms {code} h3. Notes While service desk does appear to start up, the sidebar navigation appear to be corrupted for all existing Service Desk projects and new Service Desk projects. The top of the navigation menu has the error "Unable to render element due to an error" !jsd32unabletorender.png|thumbnail! h3.Workaround # [Rollback|https://confluence.atlassian.com/adminjiraserver071/rolling-back-a-jira-application-upgrade-802592268.html] the JIRA upgrade first # Then upgrade to a Service Desk version such as 3.0.10 (Corresponds to JIRA Server 7.0.10) # Once this upgrade is complete, you should then be able to upgrade JIRA to 7.2 and Service Desk to 3.2

    Atlassian JIRA | 3 months ago | Andrew Heinzer [Atlassian]
    com.atlassian.servicedesk.bootstrap.upgrade.UnsatisfiedVersionRequirementException: '2.5.4' version of Service Desk cannot be upgraded to '3.2.0-038-01'. Upgrade to '3.0.0' <= <version> < '3.2.0' first.

    Root Cause Analysis

    1. com.atlassian.servicedesk.bootstrap.upgrade.UnsatisfiedVersionRequirementException

      '2.5.4' version of Service Desk cannot be upgraded to '3.2.0-038-01'. Upgrade to '3.0.0' <= <version> < '3.2.0' first.

      at com.atlassian.servicedesk.bootstrap.upgrade.UpgradeRequirementsChecker.checkVersionRequirementForUpgrade()
    2. com.atlassian.servicedesk
      Launcher$1$1.run
      1. com.atlassian.servicedesk.bootstrap.upgrade.UpgradeRequirementsChecker.checkVersionRequirementForUpgrade(UpgradeRequirementsChecker.java:25)
      2. com.atlassian.servicedesk.bootstrap.lifecycle.PluginLifeCycle.checkAndRunUpgrades(PluginLifeCycle.java:256)
      3. com.atlassian.servicedesk.bootstrap.lifecycle.PluginLifeCycle.runPluginStartupSideEffectsImpl(PluginLifeCycle.java:183)
      4. com.atlassian.servicedesk.bootstrap.lifecycle.LifecycleLock.writeImpl(LifecycleLock.java:97)
      5. com.atlassian.servicedesk.bootstrap.lifecycle.LifecycleLock.runOnStartup(LifecycleLock.java:75)
      6. com.atlassian.servicedesk.bootstrap.lifecycle.PluginLifeCycle.onPluginStarted(PluginLifeCycle.java:126)
      7. com.atlassian.servicedesk.bootstrap.lifecycle.Launcher.onStartCompleted(Launcher.java:75)
      8. com.atlassian.servicedesk.bootstrap.lifecycle.Launcher.access$000(Launcher.java:23)
      9. com.atlassian.servicedesk.bootstrap.lifecycle.Launcher$1$1.run(Launcher.java:42)
      9 frames
    3. com.atlassian.pocketknife
      SealedRunner.breakSeal
      1. com.atlassian.pocketknife.api.util.runners.SealedRunner.checkSeals(SealedRunner.java:111)
      2. com.atlassian.pocketknife.api.util.runners.SealedRunner.breakSeal(SealedRunner.java:68)
      2 frames
    4. com.atlassian.servicedesk
      Launcher.onStart
      1. com.atlassian.servicedesk.bootstrap.lifecycle.Launcher.onStart(Launcher.java:68)
      1 frame
    5. com.atlassian.sal
      JiraLifecycleManager.onJiraStart
      1. com.atlassian.sal.core.lifecycle.DefaultLifecycleManager$4.consume(DefaultLifecycleManager.java:310)
      2. com.atlassian.sal.core.lifecycle.DefaultLifecycleManager$4.consume(DefaultLifecycleManager.java:306)
      3. com.atlassian.sal.core.lifecycle.DefaultLifecycleManager.notifyLifecyleAware(DefaultLifecycleManager.java:344)
      4. com.atlassian.sal.core.lifecycle.DefaultLifecycleManager.notifyOnStartIfStartedAndEnabled(DefaultLifecycleManager.java:304)
      5. com.atlassian.sal.core.lifecycle.DefaultLifecycleManager.access$300(DefaultLifecycleManager.java:50)
      6. com.atlassian.sal.core.lifecycle.DefaultLifecycleManager$3.evaluate(DefaultLifecycleManager.java:261)
      7. com.atlassian.sal.core.lifecycle.DefaultLifecycleManager$3.evaluate(DefaultLifecycleManager.java:257)
      8. com.atlassian.sal.core.lifecycle.DefaultLifecycleManager.notifyLifecycleAwares(DefaultLifecycleManager.java:286)
      9. com.atlassian.sal.core.lifecycle.DefaultLifecycleManager.notifyStartableLifecycleAwares(DefaultLifecycleManager.java:255)
      10. com.atlassian.sal.core.lifecycle.DefaultLifecycleManager.startIfApplicationSetup(DefaultLifecycleManager.java:241)
      11. com.atlassian.sal.core.lifecycle.DefaultLifecycleManager.start(DefaultLifecycleManager.java:230)
      12. com.atlassian.sal.jira.lifecycle.JiraLifecycleManager.onJiraStart(JiraLifecycleManager.java:64)
      12 frames