我们最近从 4.4.1 升级到 Sonar 5.3,发现我们的一个项目存在重复的关键问题。我检查了排序规则,发现数据库服务器和数据库不区分大小写,列区分大小写。我们应该将数据库上的排序规则更改为 "Latin1_General_CS_AS" 吗?更改服务器上的排序规则有点困难,但我们可以尝试使用数据库。
SELECT SERVERPROPERTY('COLLATION')
输出:Latin1_General_CI_AS
SELECT DATABASEPROPERTYEX('<SonarDatabaseName>', 'Collation') SQLCollation;
输出:Latin1_General_CI_AS
对于列,它是“Laitn1_General_CS_AS”
声纳日志中的错误。我确实在表中看到了一个重复的键,但不确定这是否是由于这里报告的排序规则 Duplicate key error with SonarQube 5.2:
ERROR [o.s.s.c.t.CeWorkerCallableImpl] Failed to execute task AVM28yZdM8YcgYQ_GJuI
org.sonar.server.computation.component.VisitException: Visit failed for Component
.
.
### Error updating database. Cause: com.microsoft.sqlserver.jdbc.SQLServerException: Cannot insert duplicate key row in object 'dbo.projects' with unique index 'projects_kee'.
提前致谢。