Mono repository with PR analitics

Hey sonarQube team, I have a mono repository with couple of microservices inside. We want to add sonarqube as quality control system in our jenkins pipeline. In order to archive this we execute this gradle comments

gradle :{projectName}:sonarqube -Dsonar.projectKey={projectName} -Dsonar.pullrequest.github.repository=test -Dsonar.pullrequest.key=0001 -Dsonar.pullrequest.branch=feature/TEST-0001

We run that comment for every projects, but only first one is scanned but for the second one we have error like:
2020.04.06 14:46:35 ERROR ce[AXFP9RjztzPZorhgxrjN][o.s.c.t.s.ComputationStepExecutor] Execution of listener failed
java.lang.IllegalStateException: Missing project key
at org.sonar.ce.task.projectanalysis.api.posttask.PostProjectAnalysisTasksExecutor.lambda$createProject$1(PostProjectAnalysisTasksExecutor.java:202)

SonarQubeVersion: 8.1.0.31237
Gradle plugin: id “org.sonarqube” version “2.8”
Jenkins plugin: https://plugins.jenkins.io/sonar/ with version 2.10

Well, are you sure you are actually passing something to -Dsonar.projectKey, and not an empty variable?

Hey, yes I am sure
All of the placeholder from the command below are filled correctly.

gradle :{projectName}:sonarqube -Dsonar.projectKey={projectName} -Dsonar.pullrequest.github.repository=test -Dsonar.pullrequest.key=0001 -Dsonar.pullrequest.branch=feature/TEST-0001

For the first project evething is fine, but for the second project fail with the error from the ticket.

Do you have the logs of the scanner? I assume that the error happens in the server side?

This is the logs that I have from compute engine:

2020.04.06 19:49:21 INFO  ce[AXFRCkm5WLvbZ-UPez77][o.s.c.t.s.ComputationStepExecutor] Extract report | status=SUCCESS | time=22ms
2020.04.06 19:49:21 INFO  ce[AXFRCkm5WLvbZ-UPez77][o.s.c.t.s.ComputationStepExecutor] Persist scanner context | status=SUCCESS | time=5ms
2020.04.06 19:49:21 INFO  ce[AXFRCkm5WLvbZ-UPez77][o.s.c.t.s.ComputationStepExecutor] Propagate analysis warnings from scanner report | status=SUCCESS | time=0ms
2020.04.06 19:49:21 INFO  ce[AXFRCkm5WLvbZ-UPez77][o.s.c.t.s.ComputationStepExecutor] Execute DB migrations for current project | status=SUCCESS | time=4ms
2020.04.06 19:49:21 INFO  ce[AXFRCkm5WLvbZ-UPez77][o.s.c.t.s.ComputationStepExecutor] Generate analysis UUID | status=SUCCESS | time=0ms
2020.04.06 19:49:21 INFO  ce[AXFRCkm5WLvbZ-UPez77][o.s.c.t.s.ComputationStepExecutor] Load analysis metadata | status=SUCCESS | time=19ms
2020.04.06 19:49:21 INFO  ce[AXFRCkm5WLvbZ-UPez77][o.s.c.t.s.ComputationStepExecutor] Initialize | status=SUCCESS | time=11ms
2020.04.06 19:49:21 INFO  ce[AXFRCkm5WLvbZ-UPez77][o.s.c.t.s.ComputationStepExecutor] Verify billing | status=SUCCESS | time=0ms
2020.04.06 19:49:21 INFO  ce[AXFRCkm5WLvbZ-UPez77][o.s.c.t.s.ComputationStepExecutor] Build tree of components | components=5 | status=SUCCESS | time=32ms
2020.04.06 19:49:21 INFO  ce[AXFRCkm5WLvbZ-UPez77][o.s.c.t.s.ComputationStepExecutor] Validate project | status=SUCCESS | time=6ms
2020.04.06 19:49:22 INFO  ce[AXFRCkm5WLvbZ-UPez77][o.s.c.t.s.ComputationStepExecutor] Load quality profiles | status=SUCCESS | time=236ms
2020.04.06 19:49:22 INFO  ce[AXFRCkm5WLvbZ-UPez77][o.s.c.t.s.ComputationStepExecutor] Load Quality gate | status=SUCCESS | time=7ms
2020.04.06 19:49:22 INFO  ce[AXFRCkm5WLvbZ-UPez77][o.s.c.t.s.ComputationStepExecutor] Load new code period | status=SUCCESS | time=0ms
2020.04.06 19:49:22 INFO  ce[AXFRCkm5WLvbZ-UPez77][o.s.c.t.s.ComputationStepExecutor] Detect file moves | reportFiles=1 | dbFiles=1 | addedFiles=0 | status=SUCCESS | time=18ms
2020.04.06 19:49:22 INFO  ce[AXFRCkm5WLvbZ-UPez77][o.s.c.t.s.ComputationStepExecutor] Load duplications | duplications=3 | status=SUCCESS | time=3ms
2020.04.06 19:49:22 INFO  ce[AXFRCkm5WLvbZ-UPez77][o.s.c.t.s.ComputationStepExecutor] Compute cross project duplications | status=SUCCESS | time=1ms
2020.04.06 19:49:22 INFO  ce[AXFRCkm5WLvbZ-UPez77][o.s.c.t.s.ComputationStepExecutor] Compute size measures | status=SUCCESS | time=0ms
2020.04.06 19:49:22 INFO  ce[AXFRCkm5WLvbZ-UPez77][o.s.c.t.s.ComputationStepExecutor] Compute new coverage | status=SUCCESS | time=0ms
2020.04.06 19:49:22 INFO  ce[AXFRCkm5WLvbZ-UPez77][o.s.c.t.s.ComputationStepExecutor] Compute coverage measures | status=SUCCESS | time=15ms
2020.04.06 19:49:22 INFO  ce[AXFRCkm5WLvbZ-UPez77][o.s.c.t.s.ComputationStepExecutor] Compute comment measures | status=SUCCESS | time=2ms
2020.04.06 19:49:22 INFO  ce[AXFRCkm5WLvbZ-UPez77][o.s.c.t.s.ComputationStepExecutor] Copy custom measures | status=SUCCESS | time=3ms
2020.04.06 19:49:22 INFO  ce[AXFRCkm5WLvbZ-UPez77][o.s.c.t.s.ComputationStepExecutor] Compute duplication measures | status=SUCCESS | time=1ms
2020.04.06 19:49:22 INFO  ce[AXFRCkm5WLvbZ-UPez77][o.s.c.t.s.ComputationStepExecutor] Compute size measures on new code | status=SUCCESS | time=0ms
2020.04.06 19:49:22 INFO  ce[AXFRCkm5WLvbZ-UPez77][o.s.c.t.s.ComputationStepExecutor] Compute language distribution | status=SUCCESS | time=0ms
2020.04.06 19:49:22 INFO  ce[AXFRCkm5WLvbZ-UPez77][o.s.c.t.s.ComputationStepExecutor] Compute test measures | status=SUCCESS | time=0ms
2020.04.06 19:49:22 INFO  ce[AXFRCkm5WLvbZ-UPez77][o.s.c.t.s.ComputationStepExecutor] Compute complexity measures | status=SUCCESS | time=0ms
2020.04.06 19:49:22 INFO  ce[AXFRCkm5WLvbZ-UPez77][o.s.c.t.s.ComputationStepExecutor] Load measure computers | status=SUCCESS | time=0ms
2020.04.06 19:49:22 INFO  ce[AXFRCkm5WLvbZ-UPez77][o.s.c.t.s.ComputationStepExecutor] Compute Quality Profile status | status=SUCCESS | time=8ms
2020.04.06 19:49:22 INFO  ce[AXFRCkm5WLvbZ-UPez77][o.s.c.t.s.ComputationStepExecutor] Execute component visitors | status=SUCCESS | time=36ms
2020.04.06 19:49:22 INFO  ce[AXFRCkm5WLvbZ-UPez77][o.s.c.t.s.ComputationStepExecutor] Checks executed after computation of measures | status=SUCCESS | time=10ms
2020.04.06 19:49:22 INFO  ce[AXFRCkm5WLvbZ-UPez77][o.s.c.t.s.ComputationStepExecutor] Compute Quality Gate measures | status=SUCCESS | time=2ms
2020.04.06 19:49:22 INFO  ce[AXFRCkm5WLvbZ-UPez77][o.s.c.t.s.ComputationStepExecutor] Compute Quality profile measures | status=SUCCESS | time=0ms
2020.04.06 19:49:22 INFO  ce[AXFRCkm5WLvbZ-UPez77][o.s.c.t.s.ComputationStepExecutor] Generate Quality profile events | status=SUCCESS | time=5ms
2020.04.06 19:49:22 INFO  ce[AXFRCkm5WLvbZ-UPez77][o.s.c.t.s.ComputationStepExecutor] Generate Quality gate events | status=SUCCESS | time=0ms
2020.04.06 19:49:22 INFO  ce[AXFRCkm5WLvbZ-UPez77][o.s.c.t.s.ComputationStepExecutor] Persist components | status=SUCCESS | time=12ms
2020.04.06 19:49:22 INFO  ce[AXFRCkm5WLvbZ-UPez77][o.s.c.t.s.ComputationStepExecutor] Persist analysis | status=SUCCESS | time=3ms
2020.04.06 19:49:22 INFO  ce[AXFRCkm5WLvbZ-UPez77][o.s.c.t.s.ComputationStepExecutor] Persist analysis properties | status=SUCCESS | time=4ms
2020.04.06 19:49:22 INFO  ce[AXFRCkm5WLvbZ-UPez77][o.s.c.t.s.ComputationStepExecutor] Persist measures | inserts=75 | status=SUCCESS | time=11ms
2020.04.06 19:49:22 INFO  ce[AXFRCkm5WLvbZ-UPez77][o.s.c.t.s.ComputationStepExecutor] Persist live measures | insertsOrUpdates=320 | status=SUCCESS | time=54ms
2020.04.06 19:49:22 INFO  ce[AXFRCkm5WLvbZ-UPez77][o.s.c.t.s.ComputationStepExecutor] Persist duplication data | insertsOrUpdates=0 | status=SUCCESS | time=0ms
2020.04.06 19:49:22 INFO  ce[AXFRCkm5WLvbZ-UPez77][o.s.c.t.s.ComputationStepExecutor] Persist new ad hoc Rules | status=SUCCESS | time=0ms
2020.04.06 19:49:22 INFO  ce[AXFRCkm5WLvbZ-UPez77][o.s.c.t.s.ComputationStepExecutor] Persist issues | inserts=0 | updates=0 | merged=0 | untouched=0 | status=SUCCESS | time=1ms
2020.04.06 19:49:22 INFO  ce[AXFRCkm5WLvbZ-UPez77][o.s.c.t.s.ComputationStepExecutor] Persist project links | status=SUCCESS | time=0ms
2020.04.06 19:49:22 INFO  ce[AXFRCkm5WLvbZ-UPez77][o.s.c.t.s.ComputationStepExecutor] Persist events | status=SUCCESS | time=5ms
2020.04.06 19:49:22 INFO  ce[AXFRCkm5WLvbZ-UPez77][o.s.c.t.s.ComputationStepExecutor] Persist sources | status=SUCCESS | time=29ms
2020.04.06 19:49:22 INFO  ce[AXFRCkm5WLvbZ-UPez77][o.s.c.t.s.ComputationStepExecutor] Persist cross project duplications | status=SUCCESS | time=0ms
2020.04.06 19:49:22 INFO  ce[AXFRCkm5WLvbZ-UPez77][o.s.c.t.s.ComputationStepExecutor] Enable analysis | status=SUCCESS | time=5ms
2020.04.06 19:49:22 INFO  ce[AXFRCkm5WLvbZ-UPez77][o.s.c.t.s.ComputationStepExecutor] Update last usage date of quality profiles | status=SUCCESS | time=5ms
2020.04.06 19:49:22 INFO  ce[AXFRCkm5WLvbZ-UPez77][o.s.c.t.s.ComputationStepExecutor] Purge db | status=SUCCESS | time=72ms
2020.04.06 19:49:22 INFO  ce[AXFRCkm5WLvbZ-UPez77][o.s.c.t.s.ComputationStepExecutor] Index analysis | status=SUCCESS | time=14ms
2020.04.06 19:49:22 INFO  ce[AXFRCkm5WLvbZ-UPez77][o.s.c.t.s.ComputationStepExecutor] Send issue notifications | status=SUCCESS | time=0ms
2020.04.06 19:49:22 INFO  ce[AXFRCkm5WLvbZ-UPez77][o.s.c.t.s.ComputationStepExecutor] Publish task results | status=SUCCESS | time=0ms
2020.04.06 19:49:22 INFO  ce[AXFRCkm5WLvbZ-UPez77][o.s.c.t.s.ComputationStepExecutor] Trigger refresh of Portfolios and Applications | status=SUCCESS | time=0ms
2020.04.06 19:49:22 INFO  ce[AXFRCkm5WLvbZ-UPez77][o.s.c.t.p.a.p.PostProjectAnalysisTasksExecutor] Webhooks | globalWebhooks=1 | projectWebhooks=0 | status=SUCCESS | time=185ms
2020.04.06 19:49:22 INFO  ce[AXFRCkm5WLvbZ-UPez77][o.s.c.t.p.a.p.PostProjectAnalysisTasksExecutor] Pull Request decoration | status=SUCCESS | time=8ms
2020.04.06 19:49:22 INFO  ce[AXFRCkm5WLvbZ-UPez77][o.s.c.t.CeWorkerImpl] Executed task | project=project1-service | type=REPORT | pullRequest=0001 | id=AXFRCkm5WLvbZ-UPez77 | submitter=jenkins | status=SUCCESS | time=983ms
2020.04.06 19:50:24 INFO  ce[][o.s.c.t.CeWorkerImpl] Execute task | type=REPORT | pullRequest=0001 | id=AXFRCz-pWLvbZ-UPez79 | submitter=jenkins
2020.04.06 19:50:24 INFO  ce[AXFRCz-pWLvbZ-UPez79][o.s.c.t.s.ComputationStepExecutor] Extract report | status=SUCCESS | time=37ms
2020.04.06 19:50:24 INFO  ce[AXFRCz-pWLvbZ-UPez79][o.s.c.t.s.ComputationStepExecutor] Persist scanner context | status=SUCCESS | time=6ms
2020.04.06 19:50:24 INFO  ce[AXFRCz-pWLvbZ-UPez79][o.s.c.t.s.ComputationStepExecutor] Propagate analysis warnings from scanner report | status=SUCCESS | time=0ms
2020.04.06 19:50:24 INFO  ce[AXFRCz-pWLvbZ-UPez79][o.s.c.t.s.ComputationStepExecutor] Execute DB migrations for current project | status=SUCCESS | time=3ms
2020.04.06 19:50:24 INFO  ce[AXFRCz-pWLvbZ-UPez79][o.s.c.t.s.ComputationStepExecutor] Generate analysis UUID | status=SUCCESS | time=0ms
2020.04.06 19:50:24 INFO  ce[AXFRCz-pWLvbZ-UPez79][o.s.c.t.s.ComputationStepExecutor] Load analysis metadata | status=FAILED | time=10ms
2020.04.06 19:50:24 ERROR ce[AXFRCz-pWLvbZ-UPez79][o.s.c.t.s.ComputationStepExecutor] Execution of listener failed
java.lang.IllegalStateException: Missing project key
	at org.sonar.ce.task.projectanalysis.api.posttask.PostProjectAnalysisTasksExecutor.lambda$createProject$1(PostProjectAnalysisTasksExecutor.java:202)
	at java.base/java.util.Optional.orElseThrow(Optional.java:408)
	at org.sonar.ce.task.projectanalysis.api.posttask.PostProjectAnalysisTasksExecutor.lambda$createProject$3(PostProjectAnalysisTasksExecutor.java:202)
	at java.base/java.util.Optional.map(Optional.java:265)
	at org.sonar.ce.task.projectanalysis.api.posttask.PostProjectAnalysisTasksExecutor.createProject(PostProjectAnalysisTasksExecutor.java:200)
	at org.sonar.ce.task.projectanalysis.api.posttask.PostProjectAnalysisTasksExecutor.createProjectAnalysis(PostProjectAnalysisTasksExecutor.java:171)
	at org.sonar.ce.task.projectanalysis.api.posttask.PostProjectAnalysisTasksExecutor.finished(PostProjectAnalysisTasksExecutor.java:107)
	at org.sonar.ce.task.step.ComputationStepExecutor.executeListener(ComputationStepExecutor.java:91)
	at org.sonar.ce.task.step.ComputationStepExecutor.execute(ComputationStepExecutor.java:63)
	at org.sonar.ce.task.projectanalysis.taskprocessor.ReportTaskProcessor.process(ReportTaskProcessor.java:81)
	at org.sonar.ce.taskprocessor.CeWorkerImpl$ExecuteTask.executeTask(CeWorkerImpl.java:209)
	at org.sonar.ce.taskprocessor.CeWorkerImpl$ExecuteTask.run(CeWorkerImpl.java:191)
	at org.sonar.ce.taskprocessor.CeWorkerImpl.findAndProcessTask(CeWorkerImpl.java:158)
	at org.sonar.ce.taskprocessor.CeWorkerImpl$TrackRunningState.get(CeWorkerImpl.java:133)
	at org.sonar.ce.taskprocessor.CeWorkerImpl.call(CeWorkerImpl.java:85)
	at org.sonar.ce.taskprocessor.CeWorkerImpl.call(CeWorkerImpl.java:53)
	at com.google.common.util.concurrent.TrustedListenableFutureTask$TrustedFutureInterruptibleTask.runInterruptibly(TrustedListenableFutureTask.java:125)
	at com.google.common.util.concurrent.InterruptibleTask.run(InterruptibleTask.java:69)
	at com.google.common.util.concurrent.TrustedListenableFutureTask.run(TrustedListenableFutureTask.java:78)
	at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
	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:1128)
	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
	at java.base/java.lang.Thread.run(Thread.java:834)
2020.04.06 19:50:24 INFO  ce[AXFRCz-pWLvbZ-UPez79][o.s.c.t.CeWorkerImpl] Executed task | type=REPORT | pullRequest=0001 | id=AXFRCz-pWLvbZ-UPez79 | submitter=jenkins | status=FAILED | time=111ms

Do you have the logs of the scanner, preferably with debug enabled?

I fixed the problem when I maked the name of the project bit bigger. The problem happen only when we do PR analysis, when we do branch analyses we don’t have that problem. You want the gradle scanner log?