2015-11-05 15 views
10

Ho recentemente aggiornato il nostro server SonarQube dalla 5.1.2 alla 5.2. Eseguiamo l'analisi utilizzando SonarQube Runner (2.4) tramite Jenkins e l'analisi ha esito positivo. Il problema è che l'analisi non viene elaborata dal server. Il seguente errore può essere visto alla fine del registro che viene mostrato per l'attività in background non riuscita:L'analisi SonarQube ha esito positivo ma non viene elaborata dal server

L'errore principale è questo:

java.lang.UnsupportedOperationException: QualityGate status can not be changed if already set on source Measure 

Non ho idea di che cosa questo potrebbe riferirsi a .. Ecco di più dei registri:

2015.11.05 13:53:18 INFO [o.s.s.c.s.ComputationStepExecutor] Compute size measures | time=1114ms 
2015.11.05 13:53:21 INFO [o.s.s.c.s.ComputationStepExecutor] Compute new coverage | time=2683ms 
2015.11.05 13:53:21 INFO [o.s.s.c.s.ComputationStepExecutor] Compute coverage measures | time=586ms 
2015.11.05 13:53:21 INFO [o.s.s.c.s.ComputationStepExecutor] Compute comment measures | time=118ms 
2015.11.05 13:53:22 INFO [o.s.s.c.s.ComputationStepExecutor] Copy custom measures | time=947ms 
2015.11.05 13:53:22 INFO [o.s.s.c.s.ComputationStepExecutor] Compute duplication measures | time=58ms 
2015.11.05 13:53:22 INFO [o.s.s.c.s.ComputationStepExecutor] Compute language distribution | time=80ms 
2015.11.05 13:53:22 INFO [o.s.s.c.s.ComputationStepExecutor] Compute test measures | time=23ms 
2015.11.05 13:53:23 INFO [o.s.s.c.s.ComputationStepExecutor] Compute complexity measures | time=555ms 
2015.11.05 13:53:23 INFO [o.s.s.c.s.ComputationStepExecutor] Load measure computers | time=12ms 
2015.11.05 13:53:30 INFO [o.s.s.c.s.ExecuteVisitorsStep] Execution time for each component visitor: 
2015.11.05 13:53:30 INFO [o.s.s.c.s.ExecuteVisitorsStep] - LoadComponentUuidsHavingOpenIssuesVisitor | time=104ms 
2015.11.05 13:53:30 INFO [o.s.s.c.s.ExecuteVisitorsStep] - IntegrateIssuesVisitor | time=6566ms 
2015.11.05 13:53:30 INFO [o.s.s.c.s.ExecuteVisitorsStep] - CloseIssuesOnRemovedComponentsVisitor | time=0ms 
2015.11.05 13:53:30 INFO [o.s.s.c.s.ExecuteVisitorsStep] - SqaleMeasuresVisitor | time=85ms 
2015.11.05 13:53:30 INFO [o.s.s.c.s.ExecuteVisitorsStep] - SqaleNewMeasuresVisitor | time=42ms 
2015.11.05 13:53:30 INFO [o.s.s.c.s.ExecuteVisitorsStep] - LastCommitVisitor | time=5ms 
2015.11.05 13:53:30 INFO [o.s.s.c.s.ExecuteVisitorsStep] - MeasureComputersVisitor | time=30ms 
2015.11.05 13:53:30 INFO [o.s.s.c.s.ComputationStepExecutor] Execute component visitors | time=6924ms 
2015.11.05 13:53:33 INFO [o.s.s.c.s.ComputationStepExecutor] Compute measure variations | time=2634ms 
2015.11.05 13:53:33 ERROR [o.s.s.c.t.CeWorkerRunnableImpl] Failed to execute task AVDY_uRG1PIBOHYznvP3 
java.lang.UnsupportedOperationException: QualityGate status can not be changed if already set on source Measure 
    at org.sonar.server.computation.measure.Measure$UpdateMeasureBuilder.setQualityGateStatus(Measure.java:244) ~[sonar-server-5.2.jar:na] 
    at org.sonar.server.computation.step.QualityGateMeasuresStep.updateMeasures(QualityGateMeasuresStep.java:113) ~[sonar-server-5.2.jar:na] 
    at org.sonar.server.computation.step.QualityGateMeasuresStep.executeForProject(QualityGateMeasuresStep.java:95) ~[sonar-server-5.2.jar:na] 
    at org.sonar.server.computation.step.QualityGateMeasuresStep.access$000(QualityGateMeasuresStep.java:61) ~[sonar-server-5.2.jar:na] 
    at org.sonar.server.computation.step.QualityGateMeasuresStep$1.visitProject(QualityGateMeasuresStep.java:85) ~[sonar-server-5.2.jar:na] 
    at org.sonar.server.computation.component.DepthTraversalTypeAwareCrawler.visitNode(DepthTraversalTypeAwareCrawler.java:63) ~[sonar-server-5.2.jar:na] 
    at org.sonar.server.computation.component.DepthTraversalTypeAwareCrawler.visit(DepthTraversalTypeAwareCrawler.java:44) ~[sonar-server-5.2.jar:na] 
    at org.sonar.server.computation.step.QualityGateMeasuresStep.execute(QualityGateMeasuresStep.java:81) ~[sonar-server-5.2.jar:na] 
    at org.sonar.server.computation.step.ComputationStepExecutor.execute(ComputationStepExecutor.java:39) ~[sonar-server-5.2.jar:na] 
    at org.sonar.server.computation.taskprocessor.report.ReportTaskProcessor.process(ReportTaskProcessor.java:53) ~[sonar-server-5.2.jar:na] 
    at org.sonar.server.computation.taskprocessor.CeWorkerRunnableImpl.executeTask(CeWorkerRunnableImpl.java:78) [sonar-server-5.2.jar:na] 
    at org.sonar.server.computation.taskprocessor.CeWorkerRunnableImpl.run(CeWorkerRunnableImpl.java:55) [sonar-server-5.2.jar:na] 
    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471) [na:1.7.0_85] 
    at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:304) [na:1.7.0_85] 
    at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:178) [na:1.7.0_85] 
    at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293) [na:1.7.0_85] 
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) [na:1.7.0_85] 
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) [na:1.7.0_85] 
    at java.lang.Thread.run(Thread.java:745) [na:1.7.0_85] 

Qualcuno ha visto prima o ha qualche idea di cosa potrebbe essere sbagliato?

Grazie.

+0

Dalla mia esperienza (limitata) con Sonar posso solo dire che tende a essere molto particolare sulla compatibilità delle versioni minori di alcuni plugin. – JockX

+4

Avete, per caso, le condizioni definite per più periodi per una metrica specifica nel vostro cancello di qualità? –

+1

Sì, abbiamo definito le condizioni per più periodi nel nostro gate di qualità.Una volta rimossi, ha funzionato bene. Sarà risolto in una prossima versione? –

risposta

5

Ho lo stesso problema dall'aggiornamento alla 5.2. Come menzionato nel commento sopra, ho effettivamente avuto condizioni (copertura sul nuovo codice) definite per periodi multipli (dalla versione precedente, dall'analisi precedente, per gli ultimi 30 giorni) nelle mie porte di qualità. Ha funzionato come un fascino prima, ora è rotto.

lasciando una sola condizione per la metrica ("copertura sul nuovo codice dall'ultima versione dovrebbe essere 80%") sono riuscito a ignorare l'errore.

Tuttavia, devo dire che è molto fastidioso che l'intera faccenda sia stata interrotta ora. Periodi multipli per la stessa metrica sono stati molto utili. Ad esempio, "dalla versione precedente" mostra "quanto siamo bravi dopo il rilascio" e "poiché l'analisi precedente" mostra "quanto è buono l'ultimo commit".

1

Sono assolutamente infastidito da SonarQube. Post installazione di 5.2 funzionava bene (sto usando Sonar con Oracle DB), ma improvvisamente le attività di Sonar Background non finiranno per alcuni progetti particolari (dai log rimane sempre bloccato nel punto di [osscsComputationStepExecutor] Componenti dell'indice. Poiché l'analisi viene trasmessa di notte da Jenkins, spesso mi accorgo che i compiti in background degli ultimi 2-3 giorni si accumulano, con l'icona di avanzamento che ancora si muove su un particolare progetto da migliaia di minuti. Il riavvio del server uccide il lavoro corrente ma non si blocca sulla prossima attività in coda. I progetti più piccoli funzionano sorprendentemente bene

Un'altra parte fastidiosa se non è possibile eliminare o interrompere un'operazione in background in esecuzione dalla GUI di amministrazione, né è possibile attivare manualmente un'altra attività in coda. La parte più fastidiosa è: nessun errore nei log di Sonar o di Attività. Iveve n provato a abilitare DEBUG, a nessun aiuto.

3

Ad oggi, questo problema può essere risolto solo assicurandosi che ci sia una sola condizione per misura nel gate di qualità del progetto.

Il ticket SONAR-7276 è stato creato per ripristinare il supporto per più condizioni sulla stessa metrica.

1

verifica se il tempo di analisi sonar e la sincronizzazione dell'ora del server sonar
Amministrazione -> Progetti-> Attività backgroud, vedere i registri
enter image description here

+0

puoi commentarlo. – roottraveller

Problemi correlati