Bug in Sonar plugin for Jenkins

We are using Sonarqube Developer Edition Version 9.6 (build 59041), Jenkins version 2.346.3 and SonarQube Scanner plugin version 2.14 to scan our CXX Yocto project.
Clean build analysis is successful but during report publish timeout reached with such stacktrace:

Stacktrace
10:46:03.049  INFO: ANALYSIS SUCCESSFUL, you can find the results at: http://sonarqube/dashboard?id=Project&branch=master
10:46:03.049  INFO: Note that you will be able to access the updated dashboard once the server has processed the submitted analysis report
10:46:03.049  INFO: More about the report processing at http://sonarqube/api/ce/task?id=AYLEhAWMUvZKEdKx_eiw
10:46:03.617  INFO: Analysis total time: 16:57.865 s
10:46:03.618  INFO: ------------------------------------------------------------------------
10:46:03.618  INFO: EXECUTION SUCCESS
10:46:03.618  INFO: ------------------------------------------------------------------------
10:46:03.618  INFO: Total time: 17:05.836s
10:46:03.877  INFO: Final Memory: 43M/1979M
10:46:03.877  INFO: ------------------------------------------------------------------------
11:28:57.629  [Pipeline] End of Pipeline
11:28:57.644  Timeout has been exceeded
11:28:57.644  java.lang.InterruptedException
11:28:57.644  	at java.base/java.lang.Object.wait(Native Method)
11:28:57.644  	at hudson.remoting.Request.call(Request.java:177)
11:28:57.644  	at hudson.remoting.Channel.call(Channel.java:999)
11:28:57.645  	at hudson.FilePath.act(FilePath.java:1194)
11:28:57.645  	at hudson.FilePath.act(FilePath.java:1183)
11:28:57.645  	at hudson.FilePath.list(FilePath.java:2133)
11:28:57.645  	at hudson.FilePath.list(FilePath.java:2116)
11:28:57.645  	at hudson.FilePath.list(FilePath.java:2100)
11:28:57.645  	at hudson.plugins.sonar.utils.SonarUtils.extractReportTask(SonarUtils.java:91)
11:28:57.645  	at hudson.plugins.sonar.utils.SonarUtils.addBuildInfoTo(SonarUtils.java:131)
11:28:57.645  	at hudson.plugins.sonar.SonarBuildWrapper$AddBuildInfo.tearDown(SonarBuildWrapper.java:215)
11:28:57.645  	at org.jenkinsci.plugins.workflow.steps.CoreWrapperStep$Callback.finished(CoreWrapperStep.java:207)
11:28:57.645  	at org.jenkinsci.plugins.workflow.steps.CoreWrapperStep$Execution2$Callback2.finished(CoreWrapperStep.java:150)
11:28:57.645  	at org.jenkinsci.plugins.workflow.steps.GeneralNonBlockingStepExecution$TailCall.lambda$onSuccess$0(GeneralNonBlockingStepExecution.java:140)
11:28:57.645  	at org.jenkinsci.plugins.workflow.steps.GeneralNonBlockingStepExecution.lambda$run$0(GeneralNonBlockingStepExecution.java:77)
11:28:57.645  	at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
11:28:57.645  	at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
11:28:57.645  	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
11:28:57.645  	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
11:28:57.645  	at java.base/java.lang.Thread.run(Thread.java:829)

During research we have found that in file SonarUtils.java on 91 line searches for report path through all workspace. Our workspace size after Clean Build is more than 160GB, so this process is extremely slow.
This issue can be solved by passing Java property to sonar-scanner something like report.directory. If this property is passed, plugin will search report in this directory only and if this option is not specified, old logic with all workspace search should be executed.
I hope, this issue can be fixed ASAP.
Thank you!

Hi @KovalovVladislav,

That is indeed a problem. I’ve opened an improvement ticket here.

This topic was automatically closed 7 days after the last reply. New replies are no longer allowed.