accidently launched 6.3.6 now cannot launch 6.2.6

Tech Ops November 18, 2014

I accidentally launched 6.3.6.  i stopped 6.3.6 and then launched 6.2.6 now getting

 

An error occurred performing JIRA upgrade

The data before the upgrade has been exported to /opt/atlassian/jira/prod/data/export/jira_autoexport_20141118_113925.zip
2014-11-18 11:40:37error
Exception thrown during upgrade: Illegal group reference
java.lang.IllegalArgumentException: Illegal group reference
	at java.util.regex.Matcher.appendReplacement(Matcher.java:713)
	at java.util.regex.Matcher.replaceFirst(Matcher.java:861)
	at java.lang.String.replaceFirst(String.java:2146)
	at com.atlassian.jira.upgrade.tasks.UpgradeTask_Build6209.renameAllVersions(UpgradeTask_Build6209.java:112)
	at com.atlassian.jira.upgrade.tasks.UpgradeTask_Build6209.doUpgrade(UpgradeTask_Build6209.java:72)
	at com.atlassian.jira.upgrade.UpgradeManagerImpl.doUpgradeTaskSuccess(UpgradeManagerImpl.java:685)
	at com.atlassian.jira.upgrade.UpgradeManagerImpl.runUpgradeTasks(UpgradeManagerImpl.java:534)
	at com.atlassian.jira.upgrade.UpgradeManagerImpl.doUpgrade(UpgradeManagerImpl.java:463)
	at com.atlassian.jira.upgrade.UpgradeManagerImpl.doUpgradeIfNeeded(UpgradeManagerImpl.java:405)
	at com.atlassian.jira.upgrade.UpgradeManagerImpl.doUpgradeIfNeededAndAllowed(UpgradeManagerImpl.java:340)
	at com.atlassian.jira.upgrade.UpgradeLauncher.checkIfUpgradeNeeded(UpgradeLauncher.java:106)
	at com.atlassian.jira.upgrade.UpgradeLauncher.start(UpgradeLauncher.java:54)
	at com.atlassian.jira.startup.ActiveServicesLauncher.start(ActiveServicesLauncher.java:42)
	at com.atlassian.jira.startup.DefaultJiraLauncher$3.run(DefaultJiraLauncher.java:132)
	at com.atlassian.jira.config.database.DatabaseConfigurationManagerImpl.doNowOrEnqueue(DatabaseConfigurationManagerImpl.java:317)
	at com.atlassian.jira.config.database.DatabaseConfigurationManagerImpl.doNowOrWhenDatabaseActivated(DatabaseConfigurationManagerImpl.java:211)
	at com.atlassian.jira.startup.DefaultJiraLauncher.postDbLaunch(DefaultJiraLauncher.java:118)
	at com.atlassian.jira.startup.DefaultJiraLauncher.access$100(DefaultJiraLauncher.java:32)
	at com.atlassian.jira.startup.DefaultJiraLauncher$1.run(DefaultJiraLauncher.java:81)
	at com.atlassian.jira.util.devspeed.JiraDevSpeedTimer.run(JiraDevSpeedTimer.java:34)
	at com.atlassian.jira.startup.DefaultJiraLauncher.start(DefaultJiraLauncher.java:76)
	at com.atlassian.jira.startup.LauncherContextListener.contextInitialized(LauncherContextListener.java:54)
	at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4939)
	at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5434)
	at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
	at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1559)
	at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1549)
	at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
	at java.util.concurrent.FutureTask.run(FutureTask.java:138)
	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
	at java.lang.Thread.run(Thread.java:619)

1 answer

1 vote
Nic Brough -Adaptavist-
Community Leader
Community Leader
Community Leaders are connectors, ambassadors, and mentors. On the online community, they serve as thought leaders, product experts, and moderators.
November 18, 2014

I assume when you say you accidentally launched 6.3, it was pointed at the 6.2 database?

That means you're pretty much stuck.  6.3 will have upgraded the data to 6.3, which makes it useless to 6.2.  Your 6.2 install is now detect the version mismatch, thinking "it's older, I should upgrade" and falling over because it can't.

However, you need to establish that my guess is right first.  If it is, then you'll need to go back to the last database backup (The data can't be easily downgraded - you're looking at days or weeks of work).  But I'm really not 100% sure that is what has happened.

crf
Atlassian Team
Atlassian Team members are employees working across the company in a wide variety of roles.
November 18, 2014

Nic's answer is almost correct (upvoted), but there's a little bit more going on here. 6.2 detects the version mismatch, but it does not think "it's older, I should upgrade". It in fact knows that this is a downgrade. It just doesn't realize that it isn't a supported one. Like most Atlassian products, JIRA does not test (and therefore does not support) downgrades as a general solution to the problem. The reasons for this are numerous, but the easy ones to see are that downgrade processes add a lot of complexity both to development and to test efforts, and they tend to be fragile. It's effort that seems better directed at fixing bugs and developing new features, especially when taking a backup first is much more robust strategy. However, there is one specific case where we do support a downgrade, and that is when migrating from JIRA Cloud (formerly OnDemand) to JIRA Server (formerly just "JIRA"). This process is described here: https://confluence.atlassian.com/display/JIRA/Migrating+from+JIRA+Cloud+to+JIRA+Server Although we probably should, we don't lock this down when we release JIRA Server, so if your older version is late enough, then JIRA assumes that a migration from Cloud is the reason for the version mismatch and attempt to downgrade the data accordingly. Your 6.2.6 was the minimum supported downgrade version when 6.3 was released, so it is (accidentally) recognized as a valid downgrade target. But there are two problems. 1) We don't maintain this. It looks like by the time 6.3.6 came around, enough changes were in to break it. 2) Even if it accidentally worked, it wouldn't be supported. So yes, Nic's advice is spot on. Take the hit and restore from a backup. Anything else is asking for additional pain.

Suggest an answer

Log in or Sign up to answer