- Developer Edition
- Version 9.9.0.65466
- Azure DevOps integration (we use the sonar tasks in our pipelines)
We have a number of typescript-based React projects where I am in the process of updating our pipelines to use Node 18. We are using the Node.js tool installer
task to specify the node version (18.x). This has been painless for all projects but one.
One PR branch throws the error below on the Publish Quality Gate Result
task. I’ve created several iterations of the PR with the same results. All other PRs in this project have no issues so long as we do not use the Node.js tool installer
.
I know I’m not the first to encounter this problem, but I have not been able to find how to troubleshoot. I cannot find any duplicate test result files, and the setup on this project is identical to others where we do not have this issue. I’m very much at a loss.
2023.04.26 11:27:26 INFO ce[][o.s.c.t.CeWorkerImpl] Execute task | project=SurveyBuilder | type=REPORT | pullRequest=11997 | id=AYe-ZB_w238lEnl9PdI7 | submitter=kshanmug
2023.04.26 11:27:31 INFO ce[AYe-ZB_w238lEnl9PdI7][o.s.c.t.s.ComputationStepExecutor] Extract report | status=SUCCESS | time=4860ms
2023.04.26 11:27:31 INFO ce[AYe-ZB_w238lEnl9PdI7][o.s.c.t.s.ComputationStepExecutor] Persist scanner context | status=SUCCESS | time=31ms
2023.04.26 11:27:31 INFO ce[AYe-ZB_w238lEnl9PdI7][o.s.c.t.s.ComputationStepExecutor] Propagate analysis warnings from scanner report | status=SUCCESS | time=29ms
2023.04.26 11:27:31 INFO ce[AYe-ZB_w238lEnl9PdI7][o.s.c.t.s.ComputationStepExecutor] Generate analysis UUID | status=SUCCESS | time=0ms
2023.04.26 11:27:31 INFO ce[AYe-ZB_w238lEnl9PdI7][o.s.c.t.s.ComputationStepExecutor] Load analysis metadata | status=SUCCESS | time=36ms
2023.04.26 11:27:31 INFO ce[AYe-ZB_w238lEnl9PdI7][o.s.c.t.s.ComputationStepExecutor] Initialize | status=SUCCESS | time=38ms
2023.04.26 11:27:32 INFO ce[AYe-ZB_w238lEnl9PdI7][o.s.c.t.s.ComputationStepExecutor] Build tree of components | components=22 | status=SUCCESS | time=653ms
2023.04.26 11:27:32 INFO ce[AYe-ZB_w238lEnl9PdI7][o.s.c.t.s.ComputationStepExecutor] Validate project | status=SUCCESS | time=13ms
2023.04.26 11:27:33 INFO ce[AYe-ZB_w238lEnl9PdI7][o.s.c.t.s.ComputationStepExecutor] Load quality profiles | status=SUCCESS | time=1024ms
2023.04.26 11:27:33 INFO ce[AYe-ZB_w238lEnl9PdI7][o.s.c.t.s.ComputationStepExecutor] Load file hashes and statuses | status=SUCCESS | time=8ms
2023.04.26 11:27:33 INFO ce[AYe-ZB_w238lEnl9PdI7][o.s.c.t.s.ComputationStepExecutor] Load Quality gate | status=SUCCESS | time=10ms
2023.04.26 11:27:33 INFO ce[AYe-ZB_w238lEnl9PdI7][o.s.c.t.s.ComputationStepExecutor] Load new code period | status=SUCCESS | time=0ms
2023.04.26 11:27:33 INFO ce[AYe-ZB_w238lEnl9PdI7][o.s.c.t.s.ComputationStepExecutor] Detect file moves | status=SUCCESS | time=0ms
2023.04.26 11:27:33 INFO ce[AYe-ZB_w238lEnl9PdI7][o.s.c.t.s.ComputationStepExecutor] Detect file moves in Pull Request scope | reportFiles=10 | dbFiles=1629 | movedFiles=0 | addedFiles=10 | status=SUCCESS | time=59ms
2023.04.26 11:27:33 INFO ce[AYe-ZB_w238lEnl9PdI7][o.s.c.t.s.ComputationStepExecutor] Load duplications | duplications=27 | status=SUCCESS | time=542ms
2023.04.26 11:27:33 INFO ce[AYe-ZB_w238lEnl9PdI7][o.s.c.t.s.ComputationStepExecutor] Compute cross project duplications | status=SUCCESS | time=0ms
2023.04.26 11:27:33 INFO ce[AYe-ZB_w238lEnl9PdI7][o.s.c.t.s.ComputationStepExecutor] Compute size measures | status=SUCCESS | time=4ms
2023.04.26 11:27:33 INFO ce[AYe-ZB_w238lEnl9PdI7][o.s.c.t.s.ComputationStepExecutor] Compute new coverage | status=SUCCESS | time=0ms
2023.04.26 11:27:34 INFO ce[AYe-ZB_w238lEnl9PdI7][o.s.c.t.s.ComputationStepExecutor] Compute coverage measures | status=SUCCESS | time=639ms
2023.04.26 11:27:34 INFO ce[AYe-ZB_w238lEnl9PdI7][o.s.c.t.s.ComputationStepExecutor] Compute comment measures | status=SUCCESS | time=1ms
2023.04.26 11:27:34 INFO ce[AYe-ZB_w238lEnl9PdI7][o.s.c.t.s.ComputationStepExecutor] Compute duplication measures | status=SUCCESS | time=3ms
2023.04.26 11:27:34 INFO ce[AYe-ZB_w238lEnl9PdI7][o.s.c.t.s.ComputationStepExecutor] Compute size measures on new code | status=SUCCESS | time=4ms
2023.04.26 11:27:34 INFO ce[AYe-ZB_w238lEnl9PdI7][o.s.c.t.s.ComputationStepExecutor] Compute language distribution | status=SUCCESS | time=0ms
2023.04.26 11:27:34 INFO ce[AYe-ZB_w238lEnl9PdI7][o.s.c.t.s.ComputationStepExecutor] Compute test measures | status=FAILED | time=0ms
2023.04.26 11:27:34 INFO ce[AYe-ZB_w238lEnl9PdI7][o.s.c.t.p.a.p.PostProjectAnalysisTasksExecutor] Webhooks | globalWebhooks=0 | projectWebhooks=0 | status=SUCCESS | time=15ms
2023.04.26 11:27:34 ERROR ce[AYe-ZB_w238lEnl9PdI7][o.s.c.t.p.a.p.PostProjectAnalysisTasksExecutor] Execution of task class com.sonarsource.F.D.d failed
java.lang.NullPointerException: Cannot invoke "org.sonar.db.protobuf.DbProjectBranches$PullRequestData.getBranch()" because "other" is null
at org.sonar.db.protobuf.DbProjectBranches$PullRequestData$Builder.mergeFrom(DbProjectBranches.java:789)
at org.sonar.db.protobuf.DbProjectBranches$PullRequestData.newBuilder(DbProjectBranches.java:615)
at com.sonarsource.F.D.d.A(Unknown Source)
at java.base/java.util.Optional.ifPresent(Optional.java:178)
at com.sonarsource.F.D.d.A(Unknown Source)
at com.sonarsource.F.D.d.B(Unknown Source)
at org.sonar.ce.async.SynchronousAsyncExecution.addToQueue(SynchronousAsyncExecution.java:27)
at com.sonarsource.F.D.d.A(Unknown Source)
at java.base/java.util.Optional.ifPresent(Optional.java:178)
at com.sonarsource.F.D.d.finished(Unknown Source)
at org.sonar.ce.task.projectanalysis.api.posttask.PostProjectAnalysisTasksExecutor.executeTask(PostProjectAnalysisTasksExecutor.java:102)
at org.sonar.ce.task.projectanalysis.api.posttask.PostProjectAnalysisTasksExecutor.finished(PostProjectAnalysisTasksExecutor.java:93)
at org.sonar.ce.task.step.ComputationStepExecutor.executeListener(ComputationStepExecutor.java:89)
at org.sonar.ce.task.step.ComputationStepExecutor.execute(ComputationStepExecutor.java:61)
at org.sonar.ce.task.projectanalysis.taskprocessor.ReportTaskProcessor.process(ReportTaskProcessor.java:75)
at org.sonar.ce.taskprocessor.CeWorkerImpl$ExecuteTask.executeTask(CeWorkerImpl.java:212)
at org.sonar.ce.taskprocessor.CeWorkerImpl$ExecuteTask.run(CeWorkerImpl.java:194)
at org.sonar.ce.taskprocessor.CeWorkerImpl.findAndProcessTask(CeWorkerImpl.java:160)
at org.sonar.ce.taskprocessor.CeWorkerImpl$TrackRunningState.get(CeWorkerImpl.java:135)
at org.sonar.ce.taskprocessor.CeWorkerImpl.call(CeWorkerImpl.java:87)
at org.sonar.ce.taskprocessor.CeWorkerImpl.call(CeWorkerImpl.java:53)
at com.google.common.util.concurrent.TrustedListenableFutureTask$TrustedFutureInterruptibleTask.runInterruptibly(TrustedListenableFutureTask.java:131)
at com.google.common.util.concurrent.InterruptibleTask.run(InterruptibleTask.java:74)
at com.google.common.util.concurrent.TrustedListenableFutureTask.run(TrustedListenableFutureTask.java:82)
at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539)
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
at java.base/java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:304)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
at java.base/java.lang.Thread.run(Thread.java:833)
2023.04.26 11:27:34 INFO ce[AYe-ZB_w238lEnl9PdI7][o.s.c.t.p.a.p.PostProjectAnalysisTasksExecutor] Pull Request decoration | status=FAILED | time=69ms
2023.04.26 11:27:34 INFO ce[AYe-ZB_w238lEnl9PdI7][o.s.c.t.p.a.p.PostProjectAnalysisTasksExecutor] Report branch Quality Gate status to devops platforms | status=SUCCESS | time=0ms
2023.04.26 11:27:37 ERROR ce[AYe-ZB_w238lEnl9PdI7][o.s.c.t.CeWorkerImpl] Failed to execute task AYe-ZB_w238lEnl9PdI7
org.sonar.ce.task.projectanalysis.component.VisitException: Visit failed for Component {key=SurveyBuilder,type=PROJECT}
at org.sonar.ce.task.projectanalysis.component.VisitException.rethrowOrWrap(VisitException.java:44)
at org.sonar.ce.task.projectanalysis.component.PathAwareCrawler.visit(PathAwareCrawler.java:52)
at org.sonar.ce.task.projectanalysis.step.UnitTestMeasuresStep.execute(UnitTestMeasuresStep.java:68)
at org.sonar.ce.task.step.ComputationStepExecutor.executeStep(ComputationStepExecutor.java:79)
at org.sonar.ce.task.step.ComputationStepExecutor.executeSteps(ComputationStepExecutor.java:70)
at org.sonar.ce.task.step.ComputationStepExecutor.execute(ComputationStepExecutor.java:57)
at org.sonar.ce.task.projectanalysis.taskprocessor.ReportTaskProcessor.process(ReportTaskProcessor.java:75)
at org.sonar.ce.taskprocessor.CeWorkerImpl$ExecuteTask.executeTask(CeWorkerImpl.java:212)
at org.sonar.ce.taskprocessor.CeWorkerImpl$ExecuteTask.run(CeWorkerImpl.java:194)
at org.sonar.ce.taskprocessor.CeWorkerImpl.findAndProcessTask(CeWorkerImpl.java:160)
at org.sonar.ce.taskprocessor.CeWorkerImpl$TrackRunningState.get(CeWorkerImpl.java:135)
at org.sonar.ce.taskprocessor.CeWorkerImpl.call(CeWorkerImpl.java:87)
at org.sonar.ce.taskprocessor.CeWorkerImpl.call(CeWorkerImpl.java:53)
at com.google.common.util.concurrent.TrustedListenableFutureTask$TrustedFutureInterruptibleTask.runInterruptibly(TrustedListenableFutureTask.java:131)
at com.google.common.util.concurrent.InterruptibleTask.run(InterruptibleTask.java:74)
at com.google.common.util.concurrent.TrustedListenableFutureTask.run(TrustedListenableFutureTask.java:82)
at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539)
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
at java.base/java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:304)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
at java.base/java.lang.Thread.run(Thread.java:833)
Caused by: java.lang.UnsupportedOperationException: a measure can be set only once for a specific Component (key=SurveyBuilder), Metric (key=tests). Use update method
at org.sonar.ce.task.projectanalysis.measure.MapBasedRawMeasureRepository.add(MapBasedRawMeasureRepository.java:71)
at org.sonar.ce.task.projectanalysis.measure.MeasureRepositoryImpl.add(MeasureRepositoryImpl.java:90)
at org.sonar.ce.task.projectanalysis.formula.FormulaExecutorComponentVisitor.addNewMeasure(FormulaExecutorComponentVisitor.java:164)
at org.sonar.ce.task.projectanalysis.formula.FormulaExecutorComponentVisitor.processNotLeaf(FormulaExecutorComponentVisitor.java:137)
at org.sonar.ce.task.projectanalysis.formula.FormulaExecutorComponentVisitor.process(FormulaExecutorComponentVisitor.java:127)
at org.sonar.ce.task.projectanalysis.formula.FormulaExecutorComponentVisitor.visitProject(FormulaExecutorComponentVisitor.java:95)
at org.sonar.ce.task.projectanalysis.component.PathAwareCrawler.visitNode(PathAwareCrawler.java:96)
at org.sonar.ce.task.projectanalysis.component.PathAwareCrawler.visitImpl(PathAwareCrawler.java:73)
at org.sonar.ce.task.projectanalysis.component.PathAwareCrawler.visit(PathAwareCrawler.java:50)
... 20 common frames omitted