JIRA Agile Upgrade Fails with a NullPointerException
Platform notice: Server and Data Center only. This article only applies to Atlassian products on the Server and Data Center platforms.
Support for Server* products ended on February 15th 2024. If you are running a Server product, you can visit the Atlassian Server end of support announcement to review your migration options.
*Except Fisheye and Crucible
Symptoms
When upgrading to JIRA Agile 6.1 from 6.0.8 or lower, Upgrade Task 27 fails with an "Upgrade failed: null" error message and throws a java.lang.NullPointerException
.
This may appear in JIRA as the following notice:
JIRA Agile is currently unavailable. This might be because an upgrade task has failed to run or has not not yet completed.
Please contact your system administrator if you continue to see this message.
The following appears in the atlassian-jira.log
:
012-12-11 08:39:41,774 pool-18-thread-1 ERROR sysadmin 515x343x2 a5c1a4 0:0:0:0:0:0:0:1%0 /rest/plugins/1.0/ [sal.core.upgrade.PluginUpgrader] Upgrade failed: null
java.lang.NullPointerException
at com.atlassian.greenhopper.customfield.CustomFieldServiceImpl.setOptionsOrderFromMetadata(CustomFieldServiceImpl.java:179)
at com.atlassian.greenhopper.service.issuelink.EpicCustomFieldServiceImpl.ensureEpicStatusFieldHasCorrectOptionsOrder(EpicCustomFieldServiceImpl.java:125)
at com.atlassian.greenhopper.upgrade.GhUpgradeTask027.performUpgrade(GhUpgradeTask027.java:85)
at com.atlassian.greenhopper.upgrade.AbstractGhUpgradeTask.doUpgrade(AbstractGhUpgradeTask.java:50)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
Diagnosis
Upgrading to JIRA 6.1.x from JIRA Agile 6.0.8 or lower.
If the instructions in this KB are followed for an upgrade from 6.1.0 to 6.1.1 or higher, it will incur data loss.
Cause
It is currently unknown what the root cause is, at this stage it appears to be an inconsistency with the data in the database, most likely from the Epic functionality in Atlassian Labs.
Resolution
If the instructions in this KB are followed for an upgrade from 6.1.0 to another 6.1.1 or higher, it will incur data loss.
Delete the Epic Status Custom Field, as per our Configuring a Custom Field documentation.
The value in the Epic Status field isn't being used in previous versions (6.0.8 and lower) so there should not be any data to lose, unless it has been explicitly set manually. If this is deleted when upgrading from 6.1.0 to 6.1.1 and higher, it will incur data loss.
- Disable and re-enable the JIRA Agile plugin in the UPM. This will cause the upgrade tasks to run again.
- Test JIRA Agile to ensure it is accessible.