Hi there,
I have just attempted upgrading our SonarQube Enterprise Edition test instance from 7.9.1 to the latest 8.4.0 release. Unfortunately it now wont start and the only error I can find in the log files is the following obscure message in web.log
:
2020.07.06 15:00:36 ERROR web[][o.s.s.p.Platform] Background initialization failed. Stopping SonarQube
java.lang.IllegalArgumentException: Comparison method violates its general contract!
at java.base/java.util.TimSort.mergeLo(TimSort.java:781)
at java.base/java.util.TimSort.mergeAt(TimSort.java:518)
at java.base/java.util.TimSort.mergeCollapse(TimSort.java:448)
at java.base/java.util.TimSort.sort(TimSort.java:245)
at java.base/java.util.Arrays.sort(Arrays.java:1515)
at java.base/java.util.ArrayList.sort(ArrayList.java:1749)
at org.sonar.server.issue.index.AsyncIssueIndexingImpl.sortProjectUuids(AsyncIssueIndexingImpl.java:104)
at org.sonar.server.issue.index.AsyncIssueIndexingImpl.triggerOnIndexCreation(AsyncIssueIndexingImpl.java:81)
at org.sonar.server.issue.index.IssueIndexer.triggerAsyncIndexOnStartup(IssueIndexer.java:102)
at org.sonar.server.es.IndexerStartupTask.asynchronousIndexing(IndexerStartupTask.java:94)
at org.sonar.server.es.IndexerStartupTask.indexUninitializedTypes(IndexerStartupTask.java:73)
at java.base/java.util.Spliterators$ArraySpliterator.forEachRemaining(Spliterators.java:948)
at java.base/java.util.stream.ReferencePipeline$Head.forEach(ReferencePipeline.java:658)
at org.sonar.server.es.IndexerStartupTask.execute(IndexerStartupTask.java:55)
at java.base/java.util.Optional.ifPresent(Optional.java:183)
at org.sonar.server.platform.platformlevel.PlatformLevelStartup$1.doPrivileged(PlatformLevelStartup.java:86)
at org.sonar.server.user.DoPrivileged.execute(DoPrivileged.java:46)
at org.sonar.server.platform.platformlevel.PlatformLevelStartup.start(PlatformLevelStartup.java:82)
at org.sonar.server.platform.PlatformImpl.executeStartupTasks(PlatformImpl.java:198)
at org.sonar.server.platform.PlatformImpl.access$400(PlatformImpl.java:46)
at org.sonar.server.platform.PlatformImpl$1.lambda$doRun$1(PlatformImpl.java:122)
at org.sonar.server.platform.PlatformImpl$AutoStarterRunnable.runIfNotAborted(PlatformImpl.java:370)
at org.sonar.server.platform.PlatformImpl$1.doRun(PlatformImpl.java:122)
at org.sonar.server.platform.PlatformImpl$AutoStarterRunnable.run(PlatformImpl.java:354)
at java.base/java.lang.Thread.run(Thread.java:834)
2020.07.06 15:00:36 INFO web[][o.s.p.ProcessEntryPoint] Hard stopping process
2020.07.06 15:38:52 INFO web[][o.s.s.n.NotificationDaemon] Notification service stopped
2020.07.06 15:38:52 INFO web[][o.s.s.e.CoreExtensionStopper] Stopping Governance
2020.07.06 15:38:52 INFO web[][o.s.s.e.CoreExtensionStopper] Stopping Governance (done) | time=0ms
2020.07.06 15:38:52 WARN web[][o.a.c.l.WebappClassLoaderBase] The web application [ROOT] appears to have started a thread named [Thread-2] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread:\n java.base@11.0.4/java.net.SocketInputStream.socketRead0(Native Method)\n java.base@11.0.4/java.net.SocketInputStream.socketRead(SocketInputStream.java:115)\n java.base@11.0.4/java.net.SocketInputStream.read(SocketInputStream.java:168)\n java.base@11.0.4/java.net.SocketInputStream.read(SocketInputStream.java:140)\n java.base@11.0.4/java.io.BufferedInputStream.fill(BufferedInputStream.java:252)\n java.base@11.0.4/java.io.BufferedInputStream.read1(BufferedInputStream.java:292)\n java.base@11.0.4/java.io.BufferedInputStream.read(BufferedInputStream.java:351)\n java.naming@11.0.4/com.sun.jndi.ldap.Connection.run(Connection.java:832)\n java.base@11.0.4/java.lang.Thread.run(Thread.java:834)
Are you please able to provide any guidance on how to investigate/resolve this issue?
Thanks,
Sam