Upgrade problems (8.3.3 -> 8.13.2)

Contemi-EUR: Dariusz Nowak February 25, 2021

Hey,

I'm trying to upgrade my old 8.3.3 Jira to 8.13.2 (I believe LTS), my process is preety simple:

* Stop Jira

* Run atlassian-jira-core-8.13.2-x64.bin & atlassian-jira-software-8.13.2-x64.bin selecting option to upgrade existing Jira

** Not sure should I run both of them but tried only 2nd one (assuming software already has core inside) and no differerence

 

Then when I try to start Jira with all plugins (it works with --disable-plugins) I'm getting:

{code}

2021-02-25 16:34:01,343+0000 JIRA-Bootstrap ERROR      [c.a.jira.upgrade.PluginSystemLauncher] A fatal error occured during initialisation. JIRA has been locked.
org.picocontainer.injectors.AbstractInjector$UnsatisfiableDependenciesException: com.atlassian.jira.issue.index.IndexingStatsEventPublisher has unsatisfied dependency 'class com.atlassian.jira.issue.fields.DefaultFieldManager' for constructor 'public com.atlassian.jira.issue.index.IndexingStatsEventPublisher(com.atlassian.event.api.EventPublisher,com.atlassian.jira.datetime.DateTimeFormatterFactory,com.atlassian.jira.issue.fields.DefaultFieldManager,com.atlassian.jira.security.JiraAuthenticationContext,com.atlassian.jira.cluster.ClusterManager)' from JIRAContainer_2021-02-25T16:32:42.710Z:1663<|
        at org.picocontainer.injectors.ConstructorInjector.getGreediestSatisfiableConstructor(ConstructorInjector.java:191)
        at org.picocontainer.injectors.ConstructorInjector.getGreediestSatisfiableConstructor(ConstructorInjector.java:110)
        at org.picocontainer.injectors.ConstructorInjector.access$100(ConstructorInjector.java:51)
        at org.picocontainer.injectors.ConstructorInjector$1.run(ConstructorInjector.java:331)
        at org.picocontainer.injectors.AbstractInjector$ThreadLocalCyclicDependencyGuard.observe(AbstractInjector.java:270)
        at org.picocontainer.injectors.ConstructorInjector.getComponentInstance(ConstructorInjector.java:364)
        at org.picocontainer.behaviors.AbstractBehavior.getComponentInstance(AbstractBehavior.java:64)
        at org.picocontainer.behaviors.Stored.getComponentInstance(Stored.java:91)
        at org.picocontainer.behaviors.AbstractBehavior.getComponentInstance(AbstractBehavior.java:64)
        at org.picocontainer.behaviors.Locked.getComponentInstance(Locked.java:40)
        at org.picocontainer.DefaultPicoContainer.getInstance(DefaultPicoContainer.java:698)
        at org.picocontainer.DefaultPicoContainer.getComponent(DefaultPicoContainer.java:646)
        at org.picocontainer.DefaultPicoContainer.getComponent(DefaultPicoContainer.java:631)
        at org.picocontainer.parameters.BasicComponentParameter$1.resolveInstance(BasicComponentParameter.java:118)
        at org.picocontainer.parameters.ComponentParameter$1.resolveInstance(ComponentParameter.java:136)
        at org.picocontainer.injectors.SingleMemberInjector.getParameter(SingleMemberInjector.java:78)
        at org.picocontainer.injectors.ConstructorInjector$CtorAndAdapters.getParameterArguments(ConstructorInjector.java:309)
        at org.picocontainer.injectors.ConstructorInjector$1.run(ConstructorInjector.java:335)
        at org.picocontainer.injectors.AbstractInjector$ThreadLocalCyclicDependencyGuard.observe(AbstractInjector.java:270)
        at org.picocontainer.injectors.ConstructorInjector.getComponentInstance(ConstructorInjector.java:364)
        at org.picocontainer.behaviors.AbstractBehavior.getComponentInstance(AbstractBehavior.java:64)
        at org.picocontainer.behaviors.Stored.getComponentInstance(Stored.java:91)
        at org.picocontainer.behaviors.AbstractBehavior.getComponentInstance(AbstractBehavior.java:64)
        at org.picocontainer.behaviors.Locked.getComponentInstance(Locked.java:40)
        at org.picocontainer.DefaultPicoContainer.getLocalInstance(DefaultPicoContainer.java:605)
        at org.picocontainer.DefaultPicoContainer.getComponents(DefaultPicoContainer.java:586)
        at org.picocontainer.DefaultPicoContainer.getComponents(DefaultPicoContainer.java:572)
        at com.atlassian.jira.component.pico.CachingMutablePicoContainer.getComponents(CachingMutablePicoContainer.java:153)
        at com.atlassian.jira.component.pico.ComponentContainer.instantiateComponents(ComponentContainer.java:483)
        at com.atlassian.jira.component.pico.ComponentManager.earlyStartPluginSystem(ComponentManager.java:249)
        at com.atlassian.jira.upgrade.PluginSystemLauncher.start(PluginSystemLauncher.java:45)
        at com.atlassian.jira.startup.DefaultJiraLauncher.lambda$postDbLaunch$2(DefaultJiraLauncher.java:145)
        at com.atlassian.jira.config.database.DatabaseConfigurationManagerImpl.doNowOrEnqueue(DatabaseConfigurationManagerImpl.java:301)
        at com.atlassian.jira.config.database.DatabaseConfigurationManagerImpl.doNowOrWhenDatabaseActivated(DatabaseConfigurationManagerImpl.java:196)
        at com.atlassian.jira.startup.DefaultJiraLauncher.postDbLaunch(DefaultJiraLauncher.java:137)
        at com.atlassian.jira.startup.DefaultJiraLauncher.lambda$start$0(DefaultJiraLauncher.java:104)
        at com.atlassian.jira.util.devspeed.JiraDevSpeedTimer.run(JiraDevSpeedTimer.java:31)
        at com.atlassian.jira.startup.DefaultJiraLauncher.start(DefaultJiraLauncher.java:102)
        at com.atlassian.jira.startup.LauncherContextListener.initSlowStuff(LauncherContextListener.java:154)
        at java.lang.Thread.run(Thread.java:748)
2021-02-25 16:34:06,632+0000 JIRA-Bootstrap ERROR      [c.a.jira.startup.DefaultJiraLauncher] JIRA has failed to start because of the following errors: [(Event: Level = (EventLevel: fatal) , Key = (EventType: startup-unexpected) , Desc = We couldn't start JIRA , Exception = An error occurred while trying to start JIRA. We can't give you any more detail right now, we suggest checking the logs for more detail and contacting our support team.<br/>See our documentation for more information on contacting our support team and creating a support zip.), (Event: Level = (EventLevel: fatal) , Key = (EventType: database) , Desc = Could not execute health check, DatabaseConfigurationManager not available. , Exception = ]

{code}

Is this maybe related to a specific plugin as it's not clear from error message?

Thanks
Dariusz

1 answer

0 votes
Fadoua
Community Leader
Community Leader
Community Leaders are connectors, ambassadors, and mentors. On the online community, they serve as thought leaders, product experts, and moderators.
February 25, 2021

@Contemi-EUR: Dariusz Nowak Usually the error you are seeing is related to the Database. May be 2 instances pointing to the same DB. 

When you upgraded Jira did you update both dbconfig.xml and server.xml file and any other files where you had some customizations.

When upgrade is over you should be able to see the files that had some customizations.

Also like you said upgrading Jira Software will take care of Core. You don't need to upgrade both.

Please let me know and don't hesitate to ask any questions.

Best,

Fadoua

Contemi-EUR: Dariusz Nowak February 26, 2021

Hi @Fadoua 

I'm sure nothing else using this DB as the rest of our systems (ex. PROD or other TEST systems) have blocked network connectivity to the target database - so only one instance talking to it.

I've copied the old server.xml after the upgrade (the only modification was a different listener on port 8080 so we can use our reverse proxy) and still the same effect.

We also have 2 x other files modified (some CSS related to the comment system) and I've also copied them across after the upgrade. Thanks for the hint on Software vs Core. 

However, this may be interesting for you:

  • Our Prod system is on Mysql 5.6, during upgrade I needed to upgrade the test system to Mysql 5.7 and update JDBC Driver too

Do you think this is related? I If 8.3.3. support Mysql 5.7 can try upgrade DB on PROD first and then move this backup straight to my TEST system.

Any feedback now?

Thanks
Dariusz

Fadoua
Community Leader
Community Leader
Community Leaders are connectors, ambassadors, and mentors. On the online community, they serve as thought leaders, product experts, and moderators.
February 26, 2021

Hello @Contemi-EUR: Dariusz Nowak 

First tip - Never copy the files from an old version to a new version. You only copy the changes you made otherwise any new parameters on the new version will not be functional and could create a problem for you

Second tip - Why doing 2 upgrades at the same time? Wha tI mean Jira and DB at the same time. If you can rollback and try to do the DB first start Jira make sure everything is working properly then upgrade Jira. Because right now we don't know what could be the problem,

Makes sense?

Best,

Fadoua

Contemi-EUR: Dariusz Nowak March 3, 2021

Hi @Fadoua 

I've followed your advice and not moved this time modified files - this made a difference and the upgrade finished successfully (of course excluding few addons but this was expected). 

Regarding DB upgrade we had a situation where PROD was on Jira 8.3.3 with Mysql 5.6 and we want to go to 8.13.2 which does not support 5.6 anymore. So I've landed with my TEST system on 5.7 and hence the difference in DBs. The first thing I will do on go-live weekend for 8.13.2 upgrade will be Mysql 5.6 - 5.7 upgrade to clear thar requirement first

 

Thanks for your help

Dariusz

Like Fadoua likes this
Fadoua
Community Leader
Community Leader
Community Leaders are connectors, ambassadors, and mentors. On the online community, they serve as thought leaders, product experts, and moderators.
March 3, 2021

@Contemi-EUR: Dariusz Nowak  if satisfied with the help provided here please don't forget to accept my answer. Thank you!

Suggest an answer

Log in or Sign up to answer