Upgrade from 8.4.x to 8.9.x fails

SonarQube doesnt work after upgrade.
Service fails to start and all I can see in the logs are these errors:

2022.01.03 15:14:48 INFO  app[][o.s.a.AppFileSystem] Cleaning or creating temp directory C:\Program Files\sonarqube\temp
2022.01.03 15:14:48 INFO  app[][o.s.a.es.EsSettings] Elasticsearch listening on [HTTP: 127.0.0.1:9001, TCP: 127.0.0.1:50166]
2022.01.03 15:14:48 INFO  app[][o.s.a.ProcessLauncherImpl] Launch process[[key='es', ipcIndex=1, logFilenamePrefix=es]] from [C:\Program Files\sonarqube\elasticsearch]: C:\Program Files\AdoptOpenJDK\jre-11.0.8.10-hotspot\bin\java -XX:+UseG1GC -Djava.io.tmpdir=C:\Program Files\sonarqube\temp -XX:ErrorFile=../logs/es_hs_err_pid%p.log -Des.networkaddress.cache.ttl=60 -Des.networkaddress.cache.negative.ttl=10 -XX:+AlwaysPreTouch -Xss1m -Djava.awt.headless=true -Dfile.encoding=UTF-8 -Djna.nosys=true -Djna.tmpdir=C:\Program Files\sonarqube\temp -XX:-OmitStackTraceInFastThrow -Dio.netty.noUnsafe=true -Dio.netty.noKeySetOptimization=true -Dio.netty.recycler.maxCapacityPerThread=0 -Dio.netty.allocator.numDirectArenas=0 -Dlog4j.shutdownHookEnabled=false -Dlog4j2.disable.jmx=true -Dlog4j2.formatMsgNoLookups=true -Djava.locale.providers=COMPAT -Des.enforce.bootstrap.checks=true -Xmx512m -Xms512m -XX:MaxDirectMemorySize=256m -XX:+HeapDumpOnOutOfMemoryError -Delasticsearch -Des.path.home=C:\Program Files\sonarqube\elasticsearch -Des.path.conf=C:\Program Files\sonarqube\temp\conf\es -cp lib/* org.elasticsearch.bootstrap.Elasticsearch
2022.01.03 15:14:48 INFO  app[][o.s.a.SchedulerImpl] Waiting for Elasticsearch to be up and running
Exception in thread "main" java.lang.NoSuchFieldError: EMPTY_BYTE_ARRAY
	at org.apache.logging.log4j.core.config.ConfigurationSource.<clinit>(ConfigurationSource.java:56)
	at org.apache.logging.log4j.core.config.builder.impl.DefaultConfigurationBuilder.build(DefaultConfigurationBuilder.java:188)
	at org.apache.logging.log4j.core.config.builder.impl.DefaultConfigurationBuilder.build(DefaultConfigurationBuilder.java:180)
	at org.apache.logging.log4j.core.config.builder.impl.DefaultConfigurationBuilder.build(DefaultConfigurationBuilder.java:69)
	at org.elasticsearch.common.logging.LogConfigurator.configureStatusLogger(LogConfigurator.java:250)
	at org.elasticsearch.common.logging.LogConfigurator.configure(LogConfigurator.java:166)
	at org.elasticsearch.common.logging.LogConfigurator.configure(LogConfigurator.java:127)
	at org.elasticsearch.bootstrap.Bootstrap.init(Bootstrap.java:302)
	at org.elasticsearch.bootstrap.Elasticsearch.init(Elasticsearch.java:159)
	at org.elasticsearch.bootstrap.Elasticsearch.execute(Elasticsearch.java:150)
	at org.elasticsearch.cli.EnvironmentAwareCommand.execute(EnvironmentAwareCommand.java:86)
	at org.elasticsearch.cli.Command.mainWithoutErrorHandling(Command.java:124)
	at org.elasticsearch.cli.Command.main(Command.java:90)
	at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:116)
	at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:93)
2022.01.03 15:14:49 WARN  app[][o.s.a.p.AbstractManagedProcess] Process exited with exit value [es]: 1
2022.01.03 15:14:49 INFO  app[][o.s.a.SchedulerImpl] Process[es] is stopped
2022.01.03 15:14:49 INFO  app[][o.s.a.SchedulerImpl] SonarQube is stopped
2022.01.03 15:14:49 ERROR app[][o.s.a.p.EsManagedProcess] Failed to check status
org.elasticsearch.ElasticsearchException: java.lang.InterruptedException
	at org.elasticsearch.client.RestHighLevelClient.performClientRequest(RestHighLevelClient.java:2695)
	at org.elasticsearch.client.RestHighLevelClient.internalPerformRequest(RestHighLevelClient.java:2171)
	at org.elasticsearch.client.RestHighLevelClient.performRequest(RestHighLevelClient.java:2137)
	at org.elasticsearch.client.RestHighLevelClient.performRequestAndParseEntity(RestHighLevelClient.java:2105)
	at org.elasticsearch.client.ClusterClient.health(ClusterClient.java:151)
	at org.sonar.application.es.EsConnectorImpl.getClusterHealthStatus(EsConnectorImpl.java:64)
	at org.sonar.application.process.EsManagedProcess.checkStatus(EsManagedProcess.java:98)
	at org.sonar.application.process.EsManagedProcess.checkOperational(EsManagedProcess.java:83)
	at org.sonar.application.process.EsManagedProcess.isOperational(EsManagedProcess.java:68)
	at org.sonar.application.process.ManagedProcessHandler.refreshState(ManagedProcessHandler.java:220)
	at org.sonar.application.process.ManagedProcessHandler$EventWatcher.run(ManagedProcessHandler.java:285)
Caused by: java.lang.InterruptedException: null
	at java.base/java.util.concurrent.locks.AbstractQueuedSynchronizer.doAcquireSharedInterruptibly(Unknown Source)
	at java.base/java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireSharedInterruptibly(Unknown Source)
	at org.elasticsearch.common.util.concurrent.BaseFuture$Sync.get(BaseFuture.java:243)
	at org.elasticsearch.common.util.concurrent.BaseFuture.get(BaseFuture.java:75)
	at org.elasticsearch.client.RestHighLevelClient.performClientRequest(RestHighLevelClient.java:2692)
	... 10 common frames omitted
<-- Wrapper Stopped

Hi,

What do the rest of your server logs say?

 
Ann

Hi Ann
Which files in particular would be useful to look at? I would be happy to share.
Thanks!

  • Sean

Hi Sean,

I’d start by checking all of them for errors and go from there.

 
:slightly_smiling_face:
Ann

Thank you! I have and the only thing I can find that has any details is what I have shared, its from the C:\Program Files\sonarqube\logs
“C:\Program Files\sonarqube\logs\sonar.20220103.log”
“C:\Program Files\sonarqube\logs\sonar.log”
This isn’t a very good solution for what we pay. I may have to recommend we deprecate SonarQube from our environment if this cant be resolved.

Hi,

Are you sure there’s nothing in your es.log? The error you’ve shared indicates a problem with Elasticsearch. I would expect more detail in that log.

 
Ann