【发布时间】:2017-06-05 19:56:31
【问题描述】:
我们最近升级到了 SonarQube 6.2 版本。对于所有项目 (16) 的统计数据:
错误、漏洞、债务、气味、重复、重复块
都为零 (0)。只有 Coverage 度量显示正的覆盖率值并且按预期存在。
作为一项独立测试,我们创建了一个简单的 Java 项目,其中存在一些技术债务问题。这个项目和其他项目一样都使用 Gradle 和 Gradle 插件:id 'org.sonarqube' version '2.2.1'。当 SonarQube 任务将数据发布到 SonarQube 时,它再次显示为仍然为零。然后我们将声纳主机 url 更改为本地 Docker 实例:
systemProp.sonar.host.url = http:/192.168.99.100:9000
Docker 实例已成功启动:
docker run -d --name sonarqube -p 9000:9000 -p 9092:9092 sonarqube
使用相同的简单项目,当 Gradle 任务 SonarQube 将结果发布到 Docker url 时,SonarQube 的相同版本 6.2 会显示所有正确的数据,并且没有任何内容为零或缺失。
我们的两个 SonarQube 6.2 版服务器都运行相同的插件,但呈现不同的结果。主要区别在于 Docker 实例从一个新数据库开始,其中呈现零数据的旧网络节点在过去 2 年中已从以前的 SonarQube 版本升级。
我们怀疑升级中的某些东西引入了导致所有这些零 (0) 的缺陷。看来问题可以通过从新数据库开始解决,但遗憾的是历史记录会丢失。
有人对这些归零措施有经验吗?
如何在不丢失历史记录的情况下解决问题(数据库?)?
【问题讨论】:
-
你试过
rm $SONARQUBE_HOME/data/es吗?当然,这必须在重启过程中。 -
谢谢,这解决了问题,而且很容易解决。也许这个症状可以添加到常见问题页面,因为我的问题是“我缺少数据”而不是“如何触发完整的 SonarQube ES 重新索引?”
-
问题得到解决的接缝。至少自从我们更新到 6.5 版后,问题不再存在。
标签: sonarqube