Unable to access Insight Reports page with error "Failed to fetch report list"

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

When attempting to access to Insight reports via Insight > Reports at <Jira_base_URL>/secure/InsightReportManager.jspa, existing reports do not load with "Failed to fetch report list"

Environment

This issue was reported on Insight 8.4.2 and 8.6.12

Diagnosis

In the <Jira_home>/log/atlassian-jira.log, the error below can be seen.

1 2 3 4 5 6 7 8 9 10 11 2021-04-21 14:41:34,190+0300 http-nio-8080-exec-11 ERROR admin 881x146107x1 g86goq 192.168.56.101,192.168.56.24 /rest/insight-widgets/1/widgets [i.r.core.rest.ExceptionErrorMapper] Oops java.lang.IllegalArgumentException: Empty expression! at com.cronutils.parser.CronParser.parse(CronParser.java:93) at io.riada.jira.plugins.insight.widget.model.Cron$Companion.from(Cron.kt:38) at io.riada.jira.plugins.insight.widget.repository.WidgetRepositoryAOImpl.toCronExpression(WidgetRepositoryAOImpl.kt:1042) at io.riada.jira.plugins.insight.widget.repository.WidgetRepositoryAOImpl.toModel(WidgetRepositoryAOImpl.kt:1001) at io.riada.jira.plugins.insight.widget.repository.WidgetRepositoryAOImpl.search(WidgetRepositoryAOImpl.kt:618) at io.riada.jira.plugins.insight.widget.repository.WidgetRepositoryAOImpl.search(WidgetRepositoryAOImpl.kt:316) at io.riada.jira.plugins.insight.widget.service.WidgetServiceImpl.search(WidgetServiceImpl.kt:66) at io.riada.jira.plugins.insight.widget.rest.WidgetResource.widgets(WidgetResource.kt:122) ...

We can check the settings of the existing reports from the database table "AO_8542F1_IFJ_WIDGET" or by loading the Reports page with the browser developer tools > Network tab opened, and inspect the responses returned for each report.

Generally, it's easier to inspect the settings from the database by using the example SQL query below. It returns all reports with its ID, name, sync period and the cron expression if any.

For PostgreSQL

1 select "ID", "NAME", "SYNC_PERIOD", "SYNC_PERIOD_CRON" from "AO_8542F1_IFJ_WIDGET"

Cause

Invalid report configuration. For example, there is a report with the sync period set to "Advanced", which a valid cron expression is mandatory. However, it's empty. The cause to the 'empty' value is unknown.

Another potential cause of the issue arises when the expression input is submitted as a 'space'. This results in an error being displayed on the user interface, yet the input is still saved in the database.

This bug has been documented and addressed in;

Solution

As it's not possible to update the sync configuration from the UI, we can update it via database. For sync period which is just once, no cron expression is needed.

The example SQL query below update the report of ID 2 to set its sync period to Once and empty cron expression.

Always back up your data before making any database modifications. If possible, test any alter, insert, update, or delete SQL commands on a staging server first.

For PostgreSQL

1 UPDATE "AO_8542F1_IFJ_WIDGET" SET "SYNC_PERIOD" = 'ONCE', "SYNC_PERIOD_CRON" = NULL WHERE "ID" = '2';

Once the update is successfully made in the database, you can try to access the Insight Reports page and change the configurations again accordingly.

ℹ️ If the issue persists, Jira needs to be restarted for the changes to take effect.

Updated on April 11, 2025

Still need help?

The Atlassian Community is here for you.