A Background Task can be:
- the import of an Analysis Report
- the execution of the computation of Portfolios
- the execution of a project Import/Export
What happens after the scanner is done analyzing?
Analysis is not complete until the relevant Background Task has been completed. Even though the SonarQube Scanner's log shows
EXECUTION SUCCESS, the analysis results will not be visible in the SonarQube project until the Background Task has been completed. After a SonarQube Scanner has finished analyzing your code, the result of the analysis (Sources, Issues, Metrics) - the Analysis Report - is sent to SonarQube Server for final processing by the Compute Engine. Analysis Reports are queued and processed serially.
At the Project level, when there is a pending Analysis Report waiting to be consumed, you have a "Pending" notification in the header.
Global Administrators can view the current queue at Administration > Projects > Background Tasks. Project administrators can see the tasks for a project at Administration > Background Tasks.
If a Background Task is currently being processing, it will be marked with a rolling "wait" icon in this list.
How do I know when analysis report processing fails?
Background tasks usually succeed, but sometimes unusual circumstances cause processing to fail. Examples include
- running out of memory while processing a report from a very large project
- hitting clash between the key of an existing module or project and one in the report
When that happens, the failed status is reflected on the project homepage, but that requires someone to notice it. You can also choose to be notified by email when background tasks fail - either on a project by project basis, or globally on all projects where you have administration rights, in the Notifications section of your profile.
How do I diagnose a failing background task?
For each Analysis Report there is a dropdown menu allowing you to access to the "Scanner Context" showing you the configuration of the Scanner at the moment when the code scan has been run.
If processing failed for the task, an additional option will be available: "Show Error Details", to get the technical details why the processing of the Background Task failed.
How do I cancel a pending analysis report?
Administrators can cancel the processing of a pending task by clicking :
- on the red 'x' available on each line of a pending task
- on the red "bulk cancel" option next to the pending jobs count. This button cancels all pending tasks.
Once a processing has begun on a report, it's too late to cancel it.
How do I sort through the huge list of Background Tasks to find what I'm looking for?
You can filter Background Tasks according to their Status: Pending, Success, Failed or Canceled
The "Only Latest Analysis" button will filter the Background Tasks by showing only the last import for each project.
You can also filter Background Tasks according to the starting date of import.
At the top of the page, are there are two to three counters:
- pending - shows the number of Analysis Reports queued and waiting to be processed.
- failures shows the number of projects where the processing of a project's most recent analysis report failed.
- the third counter is only present during the processing of an analysis report. It shows the duration-to-date of the task currently being processed.