If you access a dashboard while you are in a different domain than global and you attempt to edit the dashboard by placing a base system existing widget on one of the existing tabs, the instance will generate new pa_widgets and pa_tabs records in your domain. However, these widgets and tabs will typically throw errors on the server and sometimes the client because they will fail to find underlying components.
Steps to Reproduce
Activate the following plugins:
Log out and log back in.
Change your domain to ACME.
Navigate to Performance Analytics > Dashboards.
Change the Dashboard to Incident SLA Management (inactive).
Click the + Add Widgets control and add a widget.
- Set the dropdown of available widgets to Performance Analytics.
- Select the Time Series > ootb - incident open - line.
- Click the Add button.
The widget will be added to the top of the Incident SLA Overview tab, but instead of displaying the preview content, it will contain the following error message:
java.lang.IllegalStateException: Widget not found for sysId: a3b6ee52d7031100b96d45a3ce6103ba
Find any existing records in the pa_widgets and pa_tabs tables that are not in the global domain and remove them.
This restores functionality to any existing PA Dashboard that is not displaying content (missing tabs or blank panes)
Put before-insert business rules onto the pa_widgets and pa_tabs tables to prevent creating any records in these tables if the domain is not global.
This prevents domain-specific records from being created that break PA Dashboard functionality.
Related Problem: PRB891187