Jira Cloud Migration Assistant Assessment does not run
Platform Notice: Data Center Only - This article only applies to Atlassian products on the Data Center platform.
Note that this KB was created for the Data Center version of the product. Data Center KBs for non-Data-Center-specific features may also work for Server versions of the product, however they have not been tested. 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
Summary
In the Jira Cloud Migration Assistant, when trying to run an assessment, the "Assess Again" button doesn't trigger an assessment.
Solution
Check for NULL timestamp in Jira Database
First of all, verify if the latest run of assessment contains null as the END_TIMESTAMP with the following database query:
select * from "AO_6FF49D_GR_RESPONSE_GROUP" order by "START_TIMESTAMP" DESC limit 1
If the query returns a row with the END_TIMESTAMP set to null, then you can attempt the following query:
update "AO_6FF49D_GR_RESPONSE_GROUP" set "END_TIMESTAMP" = "START_TIMESTAMP" where "ID" in ( select "ID" from "AO_6FF49D_GR_RESPONSE_GROUP" order by "START_TIMESTAMP" DESC limit 1 )
This will set the END_TIMESTAMP to the same value as the START_TIMESTAMP.
After running this, you should be able to run assessments again. If the assessment doesn't run, please check atlassian-jira.log
for an error like the following:
Could not initialize class oshi.software.os.linux.LinuxOperatingSystem
If you see this error, please proceed ahead to resolve the problem.
SELinux interference
The problem is that the library we use for getting the information about the OS and resources (such as CPU usage etc) require native library load. On Red Hat Enterprise Linux (RHEL) and its derivatives (like CentOS or Fedora), security policies such as SELinux can sometimes interfere with the loading of native libraries by Java applications using JNA. If SELinux is enforcing policies that restrict execution from certain directories, it may prevent JNA from loading its native libraries from the default temporary location.Here are steps to address this issue:
Check SELinux Status
First, verify if SELinux is enabled and enforcing. You can do this by running the getenforce
command on your environment.
If it returns "Enforcing," SELinux is actively enforcing its security policies.
You can disable SELinux by following our documentation: https://support.atlassian.com/confluence/kb/how-to-debug-selinux/
Relocate JNA Temporary Directory
Change the JNA temporary directory to a location that is not subject to restrictive OS policies.
Set the
jna.tmpdir
system property to a directory that is allowed by SELinuxFor example:
-Djna.tmpdir=/var/tmp/jna
Ensure that the directory you choose is writable and executable by the user running the Java process
Was this helpful?