Java Stack Trace Appears to be a Certificate Problem

This is an odd issue because in one instance the invocation is able to get the index file:

14:04:59.535 DEBUG: Download: https://ec2-w-x-y-z.us-east-2.compute.amazonaws.com/sonarqube/batch/index

but in the next instance it “can not be reached”:

14:04:59.633 ERROR: SonarQube server [https://ec2-w-x-y-z.us-east-2.compute.amazonaws.com/sonarqube] can not be reached

The multitude of logs really do not show anything since the error starts locally.

$ sonar-scanner -X -Djavax.net.ssl.trustStore -Dsonar.projectKey=Some-Super-Duper-Project -Dsonar.sources=src -Dsonar.host.url=https://ec2-w-x-y-z.us-east-2.compute.amazonaws.com/sonarqube -Dsonar.login=key
14:04:59.216 INFO: Scanner configuration file: /opt/sonar-scanner-4.3.0.2102-linux/conf/sonar-scanner.properties
14:04:59.218 INFO: Project root configuration file: /opt/sonarqube/projects/Some-Super-Duper-Project/sonar-project.properties
14:04:59.251 INFO: SonarScanner 4.3.0.2102
14:04:59.251 INFO: Java 11.0.3 AdoptOpenJDK (64-bit)
14:04:59.251 INFO: Linux 4.4.0-1107-aws amd64
14:04:59.400 DEBUG: keyStore is :
14:04:59.400 DEBUG: keyStore type is : pkcs12
14:04:59.400 DEBUG: keyStore provider is :
14:04:59.401 DEBUG: init keystore
14:04:59.401 DEBUG: init keymanager of type SunX509
14:04:59.522 DEBUG: Create: /opt/sonarqube/.sonar/cache
14:04:59.523 INFO: User cache: /opt/sonarqube/.sonar/cache
14:04:59.523 DEBUG: Create: /opt/sonarqube/.sonar/cache/_tmp
14:04:59.532 DEBUG: Extract sonar-scanner-api-batch in temp...
14:04:59.534 DEBUG: Get bootstrap index...
14:04:59.535 DEBUG: Download: https://ec2-w-x-y-z.us-east-2.compute.amazonaws.com/sonarqube/batch/index
14:04:59.633 ERROR: SonarQube server [https://ec2-w-x-y-z.us-east-2.compute.amazonaws.com/sonarqube] can not be reached
14:04:59.633 INFO: ------------------------------------------------------------------------
14:04:59.633 INFO: EXECUTION FAILURE
14:04:59.633 INFO: ------------------------------------------------------------------------
14:04:59.633 INFO: Total time: 0.437s
14:04:59.643 INFO: Final Memory: 3M/14M
14:04:59.643 INFO: ------------------------------------------------------------------------
14:04:59.643 ERROR: Error during SonarScanner execution
org.sonarsource.scanner.api.internal.ScannerException: Unable to execute SonarScanner analysis
    at org.sonarsource.scanner.api.internal.IsolatedLauncherFactory.lambda$createLauncher$0(IsolatedLauncherFactory.java:85)
    at java.base/java.security.AccessController.doPrivileged(Native Method)
    at org.sonarsource.scanner.api.internal.IsolatedLauncherFactory.createLauncher(IsolatedLauncherFactory.java:74)
    at org.sonarsource.scanner.api.internal.IsolatedLauncherFactory.createLauncher(IsolatedLauncherFactory.java:70)
    at org.sonarsource.scanner.api.EmbeddedScanner.doStart(EmbeddedScanner.java:185)
    at org.sonarsource.scanner.api.EmbeddedScanner.start(EmbeddedScanner.java:123)
    at org.sonarsource.scanner.cli.Main.execute(Main.java:73)
    at org.sonarsource.scanner.cli.Main.main(Main.java:61)
Caused by: java.lang.IllegalStateException: Fail to get bootstrap index from server
    at org.sonarsource.scanner.api.internal.BootstrapIndexDownloader.getIndex(BootstrapIndexDownloader.java:42)
    at org.sonarsource.scanner.api.internal.JarDownloader.getScannerEngineFiles(JarDownloader.java:58)
    at org.sonarsource.scanner.api.internal.JarDownloader.download(JarDownloader.java:53)
    at org.sonarsource.scanner.api.internal.IsolatedLauncherFactory.lambda$createLauncher$0(IsolatedLauncherFactory.java:76)
    ... 7 more
Caused by: javax.net.ssl.SSLHandshakeException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
    at java.base/sun.security.ssl.Alert.createSSLException(Unknown Source)
    at java.base/sun.security.ssl.TransportContext.fatal(Unknown Source)
    at java.base/sun.security.ssl.TransportContext.fatal(Unknown Source)
    at java.base/sun.security.ssl.TransportContext.fatal(Unknown Source)
    at java.base/sun.security.ssl.CertificateMessage$T12CertificateConsumer.checkServerCerts(Unknown Source)
    at java.base/sun.security.ssl.CertificateMessage$T12CertificateConsumer.onCertificate(Unknown Source)
    at java.base/sun.security.ssl.CertificateMessage$T12CertificateConsumer.consume(Unknown Source)
    at java.base/sun.security.ssl.SSLHandshake.consume(Unknown Source)
    at java.base/sun.security.ssl.HandshakeContext.dispatch(Unknown Source)
    at java.base/sun.security.ssl.HandshakeContext.dispatch(Unknown Source)
    at java.base/sun.security.ssl.TransportContext.dispatch(Unknown Source)
    at java.base/sun.security.ssl.SSLTransport.decode(Unknown Source)
    at java.base/sun.security.ssl.SSLSocketImpl.decode(Unknown Source)
    at java.base/sun.security.ssl.SSLSocketImpl.readHandshakeRecord(Unknown Source)
    at java.base/sun.security.ssl.SSLSocketImpl.startHandshake(Unknown Source)
    at org.sonarsource.scanner.api.internal.shaded.okhttp.internal.connection.RealConnection.connectTls(RealConnection.java:336)
    at org.sonarsource.scanner.api.internal.shaded.okhttp.internal.connection.RealConnection.establishProtocol(RealConnection.java:300)
    at org.sonarsource.scanner.api.internal.shaded.okhttp.internal.connection.RealConnection.connect(RealConnection.java:185)
    at org.sonarsource.scanner.api.internal.shaded.okhttp.internal.connection.ExchangeFinder.findConnection(ExchangeFinder.java:224)
    at org.sonarsource.scanner.api.internal.shaded.okhttp.internal.connection.ExchangeFinder.findHealthyConnection(ExchangeFinder.java:108)
    at org.sonarsource.scanner.api.internal.shaded.okhttp.internal.connection.ExchangeFinder.find(ExchangeFinder.java:88)
    at org.sonarsource.scanner.api.internal.shaded.okhttp.internal.connection.Transmitter.newExchange(Transmitter.java:169)
    at org.sonarsource.scanner.api.internal.shaded.okhttp.internal.connection.ConnectInterceptor.intercept(ConnectInterceptor.java:41)
    at org.sonarsource.scanner.api.internal.shaded.okhttp.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:142)
    at org.sonarsource.scanner.api.internal.shaded.okhttp.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:117)
    at org.sonarsource.scanner.api.internal.shaded.okhttp.internal.cache.CacheInterceptor.intercept(CacheInterceptor.java:94)
    at org.sonarsource.scanner.api.internal.shaded.okhttp.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:142)
    at org.sonarsource.scanner.api.internal.shaded.okhttp.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:117)
    at org.sonarsource.scanner.api.internal.shaded.okhttp.internal.http.BridgeInterceptor.intercept(BridgeInterceptor.java:93)
    at org.sonarsource.scanner.api.internal.shaded.okhttp.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:142)
    at org.sonarsource.scanner.api.internal.shaded.okhttp.internal.http.RetryAndFollowUpInterceptor.intercept(RetryAndFollowUpInterceptor.java:88)
    at org.sonarsource.scanner.api.internal.shaded.okhttp.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:142)
    at org.sonarsource.scanner.api.internal.shaded.okhttp.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:117)
    at org.sonarsource.scanner.api.internal.shaded.okhttp.RealCall.getResponseWithInterceptorChain(RealCall.java:221)
    at org.sonarsource.scanner.api.internal.shaded.okhttp.RealCall.execute(RealCall.java:81)
    at org.sonarsource.scanner.api.internal.ServerConnection.callUrl(ServerConnection.java:114)
    at org.sonarsource.scanner.api.internal.ServerConnection.downloadString(ServerConnection.java:99)
    at org.sonarsource.scanner.api.internal.BootstrapIndexDownloader.getIndex(BootstrapIndexDownloader.java:39)
    ... 10 more
Caused by: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
    at java.base/sun.security.validator.PKIXValidator.doBuild(Unknown Source)
    at java.base/sun.security.validator.PKIXValidator.engineValidate(Unknown Source)
    at java.base/sun.security.validator.Validator.validate(Unknown Source)
    at java.base/sun.security.ssl.X509TrustManagerImpl.validate(Unknown Source)
    at java.base/sun.security.ssl.X509TrustManagerImpl.checkTrusted(Unknown Source)
    at java.base/sun.security.ssl.X509TrustManagerImpl.checkServerTrusted(Unknown Source)
    ... 44 more
Caused by: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
    at java.base/sun.security.provider.certpath.SunCertPathBuilder.build(Unknown Source)
    at java.base/sun.security.provider.certpath.SunCertPathBuilder.engineBuild(Unknown Source)
    at java.base/java.security.cert.CertPathBuilder.build(Unknown Source)
    ... 50 more

Hi,

Welcome to the community!

This appears unrelated to the scanner itself. This SO question may help.

 
Ann

Thanks for the reformatting.

Yes, appears to be unrelated. However, if it was able to GET the index, then what is the reason it cannot connect to the SonarQube on the exact same port?

I am taking ideas. The link provided was viewed but did not quite apply.

The server logs are clean as well.

Is Java 11 a correct version for SonarScanner?

I decided to restart the sonarqube service and watch the logs.

The es.log seemingly revealed major issues:

==> es.log <==
2020.06.04 21:29:58 INFO  es[][o.e.n.Node] closed

==> sonar.log <==
2020.06.04 21:29:58 WARN  app[][o.s.a.p.AbstractManagedProcess] Process exited with exit value [es]: 143
2020.06.04 21:29:58 INFO  app[][o.s.a.SchedulerImpl] Process[es] is stopped
2020.06.04 21:29:58 INFO  app[][o.s.a.SchedulerImpl] SonarQube is stopped
<-- Wrapper Stopped
--> Wrapper Started as Daemon
Launching a JVM...
Wrapper (Version 3.2.3) http://wrapper.tanukisoftware.org
  Copyright 1999-2006 Tanuki Software, Inc.  All Rights Reserved.

2020.06.04 21:30:00 INFO  app[][o.s.a.AppFileSystem] Cleaning or creating temp directory /opt/sonarqube/temp
2020.06.04 21:30:00 INFO  app[][o.s.a.es.EsSettings] Elasticsearch listening on /127.0.0.1:9001
2020.06.04 21:30:00 INFO  app[][o.s.a.ProcessLauncherImpl] Launch process[[key='es', ipcIndex=1, logFilenamePrefix=es]] from [/opt/sonarqube/elasticsearch]: /opt/sonarqube/elasticsearch/bin/elasticsearch
2020.06.04 21:30:00 INFO  app[][o.s.a.SchedulerImpl] Waiting for Elasticsearch to be up and running
OpenJDK 64-Bit Server VM warning: Option UseConcMarkSweepGC was deprecated in version 9.0 and will likely be removed in a future release.
2020.06.04 21:30:00 INFO  app[][o.e.p.PluginsService] no modules loaded
2020.06.04 21:30:00 INFO  app[][o.e.p.PluginsService] loaded plugin [org.elasticsearch.transport.Netty4Plugin]

==> es.log <==
2020.06.04 21:30:03 INFO  es[][o.e.e.NodeEnvironment] using [1] data paths, mounts [[/ (/dev/xvda1)]], net usable_space [39gb], net total_space [48.4gb], types [ext4]
2020.06.04 21:30:03 INFO  es[][o.e.e.NodeEnvironment] heap size [495.3mb], compressed ordinary object pointers [true]
2020.06.04 21:30:03 INFO  es[][o.e.n.Node] node name [sonarqube], node ID [McSQfbsOTmy8Jr7VVR251g]
2020.06.04 21:30:03 INFO  es[][o.e.n.Node] version[6.8.4], pid[31119], build[default/tar/bca0c8d/2019-10-16T06:19:49.319352Z], OS[Linux/4.4.0-1107-aws/amd64], JVM[AdoptOpenJDK/OpenJDK 64-Bit Server VM/11.0.7/11.0.7+10]
2020.06.04 21:30:03 INFO  es[][o.e.n.Node] JVM arguments [-XX:+UseConcMarkSweepGC, -XX:CMSInitiatingOccupancyFraction=75, -XX:+UseCMSInitiatingOccupancyOnly, -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, -XX:-OmitStackTraceInFastThrow, -Dio.netty.noUnsafe=true, -Dio.netty.noKeySetOptimization=true, -Dio.netty.recycler.maxCapacityPerThread=0, -Dlog4j.shutdownHookEnabled=false, -Dlog4j2.disable.jmx=true, -Djava.io.tmpdir=/opt/sonarqube/temp, -XX:ErrorFile=../logs/es_hs_err_pid%p.log, -Des.enforce.bootstrap.checks=true, -Xmx512m, -Xms512m, -XX:+HeapDumpOnOutOfMemoryError, -Des.path.home=/opt/sonarqube/elasticsearch, -Des.path.conf=/opt/sonarqube/temp/conf/es, -Des.distribution.flavor=default, -Des.distribution.type=tar]
2020.06.04 21:30:04 INFO  es[][o.e.p.PluginsService] loaded module [analysis-common]
2020.06.04 21:30:04 INFO  es[][o.e.p.PluginsService] loaded module [lang-painless]
2020.06.04 21:30:04 INFO  es[][o.e.p.PluginsService] loaded module [mapper-extras]
2020.06.04 21:30:04 INFO  es[][o.e.p.PluginsService] loaded module [parent-join]
2020.06.04 21:30:04 INFO  es[][o.e.p.PluginsService] loaded module [percolator]
2020.06.04 21:30:04 INFO  es[][o.e.p.PluginsService] loaded module [reindex]
2020.06.04 21:30:04 INFO  es[][o.e.p.PluginsService] loaded module [repository-url]
2020.06.04 21:30:04 INFO  es[][o.e.p.PluginsService] loaded module [transport-netty4]
2020.06.04 21:30:04 INFO  es[][o.e.p.PluginsService] no plugins loaded
2020.06.04 21:30:06 WARN  es[][o.e.d.c.s.Settings] [http.enabled] setting was deprecated in Elasticsearch and will be removed in a future release! See the breaking changes documentation for the next major version.
2020.06.04 21:30:07 INFO  es[][o.e.d.DiscoveryModule] using discovery type [zen] and host providers [settings]
2020.06.04 21:30:07 INFO  es[][o.e.n.Node] initialized
2020.06.04 21:30:07 INFO  es[][o.e.n.Node] starting ...
2020.06.04 21:30:07 INFO  es[][o.e.t.TransportService] publish_address {127.0.0.1:9001}, bound_addresses {127.0.0.1:9001}
2020.06.04 21:30:07 INFO  es[][o.e.b.BootstrapChecks] explicitly enforcing bootstrap checks
2020.06.04 21:30:10 INFO  es[][o.e.c.s.MasterService] zen-disco-elected-as-master ([0] nodes joined), reason: new_master {sonarqube}{McSQfbsOTmy8Jr7VVR251g}{K97g2E4NTWK2itE8OjoTPA}{127.0.0.1}{127.0.0.1:9001}{rack_id=sonarqube}
2020.06.04 21:30:10 INFO  es[][o.e.c.s.ClusterApplierService] new_master {sonarqube}{McSQfbsOTmy8Jr7VVR251g}{K97g2E4NTWK2itE8OjoTPA}{127.0.0.1}{127.0.0.1:9001}{rack_id=sonarqube}, reason: apply cluster state (from master [master {sonarqube}{McSQfbsOTmy8Jr7VVR251g}{K97g2E4NTWK2itE8OjoTPA}{127.0.0.1}{127.0.0.1:9001}{rack_id=sonarqube} committed version [1] source [zen-disco-elected-as-master ([0] nodes joined)]])
2020.06.04 21:30:10 INFO  es[][o.e.n.Node] started
2020.06.04 21:30:11 INFO  es[][o.e.g.GatewayService] recovered [7] indices into cluster_state
2020.06.04 21:30:11 WARN  es[][o.e.g.G.InternalPrimaryShardAllocator] [rules][0]: failed to list shard for shard_started on node [McSQfbsOTmy8Jr7VVR251g]
org.elasticsearch.action.FailedNodeException: Failed node [McSQfbsOTmy8Jr7VVR251g]
	at org.elasticsearch.action.support.nodes.TransportNodesAction$AsyncAction.onFailure(TransportNodesAction.java:236) [elasticsearch-6.8.4.jar:6.8.4]
	at org.elasticsearch.action.support.nodes.TransportNodesAction$AsyncAction.access$200(TransportNodesAction.java:151) [elasticsearch-6.8.4.jar:6.8.4]
at org.elasticsearch.action.support.nodes.TransportNodesAction$AsyncAction$1.handleException(TransportNodesAction.java:210) [elasticsearch-6.8.4.jar:6.8.4]
at org.elasticsearch.transport.TransportService$ContextRestoreResponseHandler.handleException(TransportService.java:1114) [elasticsearch-6.8.4.jar:6.8.4]
at org.elasticsearch.transport.TransportService$DirectResponseChannel.processException(TransportService.java:1226) [elasticsearch-6.8.4.jar:6.8.4]
at org.elasticsearch.transport.TransportService$DirectResponseChannel.sendResponse(TransportService.java:1200) [elasticsearch-6.8.4.jar:6.8.4]
at org.elasticsearch.transport.TransportService$7.onFailure(TransportService.java:703) [elasticsearch-6.8.4.jar:6.8.4]
at org.elasticsearch.common.util.concurrent.ThreadContext$ContextPreservingAbstractRunnable.onFailure(ThreadContext.java:736) [elasticsearch-6.8.4.jar:6.8.4]
at org.elasticsearch.common.util.concurrent.AbstractRunnable.run(AbstractRunnable.java:39) [elasticsearch-6.8.4.jar:6.8.4]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) [?:?]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) [?:?]
at java.lang.Thread.run(Thread.java:834) [?:?]
Caused by: org.elasticsearch.transport.RemoteTransportException: [sonarqube][127.0.0.1:9001][internal:gateway/local/started_shards[n]]
Caused by: org.elasticsearch.ElasticsearchException: failed to load started shards
at   org.elasticsearch.gateway.TransportNodesListGatewayStartedShards.nodeOperation(TransportNodesListGatewayStartedShards.java:169) ~[elasticsearch-6.8.4.jar:6.8.4]
at org.elasticsearch.gateway.TransportNodesListGatewayStartedShards.nodeOperation(TransportNodesListGatewayStartedShards.java:61) ~[elasticsearch-6.8.4.jar:6.8.4]
at org.elasticsearch.action.support.nodes.TransportNodesAction.nodeOperation(TransportNodesAction.java:138) ~[elasticsearch-6.8.4.jar:6.8.4]
at org.elasticsearch.action.support.nodes.TransportNodesAction$NodeTransportHandler.messageReceived(TransportNodesAction.java:259) ~[elasticsearch-6.8.4.jar:6.8.4]
at org.elasticsearch.action.support.nodes.TransportNodesAction$NodeTransportHandler.messageReceived(TransportNodesAction.java:255) ~[elasticsearch-6.8.4.jar:6.8.4]
at org.elasticsearch.transport.RequestHandlerRegistry.processMessageReceived(RequestHandlerRegistry.java:66) ~[elasticsearch-6.8.4.jar:6.8.4]
at org.elasticsearch.transport.TransportService$7.doRun(TransportService.java:692) ~[elasticsearch-6.8.4.jar:6.8.4]
at  org.elasticsearch.common.util.concurrent.ThreadContext$ContextPreservingAbstractRunnable.doRun(ThreadContext.java:751) ~[elasticsearch-6.8.4.jar:6.8.4]
at org.elasticsearch.common.util.concurrent.AbstractRunnable.run(AbstractRunnable.java:37) ~[elasticsearch-6.8.4.jar:6.8.4]
... 3 more
Caused by: org.elasticsearch.ElasticsearchException: java.io.IOException: failed to read [id:11, file:/opt/sonarqube/data/es6/nodes/0/indices/YV5t5w2eTt6idUoaW6e3ZA/_state/state-11.st]
at org.elasticsearch.ExceptionsHelper.maybeThrowRuntimeAndSuppress(ExceptionsHelper.java:165) ~[elasticsearch-6.8.4.jar:6.8.4]
at org.elasticsearch.gateway.MetaDataStateFormat.loadLatestStateWithGeneration(MetaDataStateFormat.java:306) ~[elasticsearch-6.8.4.jar:6.8.4]
at org.elasticsearch.gateway.MetaDataStateFormat.loadLatestState(MetaDataStateFormat.java:324) ~[elasticsearch-6.8.4.jar:6.8.4]
at org.elasticsearch.gateway.TransportNodesListGatewayStartedShards.nodeOperation(TransportNodesListGatewayStartedShards.java:127) ~[elasticsearch-6.8.4.jar:6.8.4]
at org.elasticsearch.gateway.TransportNodesListGatewayStartedShards.nodeOperation(TransportNodesListGatewayStartedShards.java:61) ~[elasticsearch-6.8.4.jar:6.8.4]
at org.elasticsearch.action.support.nodes.TransportNodesAction.nodeOperation(TransportNodesAction.java:138) ~[elasticsearch-6.8.4.jar:6.8.4]
at org.elasticsearch.action.support.nodes.TransportNodesAction$NodeTransportHandler.messageReceived(TransportNodesAction.java:259) ~[elasticsearch-6.8.4.jar:6.8.4]
at org.elasticsearch.action.support.nodes.TransportNodesAction$NodeTransportHandler.messageReceived(TransportNodesAction.java:255) ~[elasticsearch-6.8.4.jar:6.8.4]
at org.elasticsearch.transport.RequestHandlerRegistry.processMessageReceived(RequestHandlerRegistry.java:66) ~[elasticsearch-6.8.4.jar:6.8.4]
at org.elasticsearch.transport.TransportService$7.doRun(TransportService.java:692) ~[elasticsearch-6.8.4.jar:6.8.4]
at org.elasticsearch.common.util.concurrent.ThreadContext$ContextPreservingAbstractRunnable.doRun(ThreadContext.java:751) ~[elasticsearch-6.8.4.jar:6.8.4]
at org.elasticsearch.common.util.concurrent.AbstractRunnable.run(AbstractRunnable.java:37) ~[elasticsearch-6.8.4.jar:6.8.4]
... 3 more
Caused by: java.io.IOException: failed to read [id:11, file:/opt/sonarqube/data/es6/nodes/0/indices/YV5t5w2eTt6idUoaW6e3ZA/_state/state-11.st]
at org.elasticsearch.gateway.MetaDataStateFormat.loadLatestStateWithGeneration(MetaDataStateFormat.java:300) ~[elasticsearch-6.8.4.jar:6.8.4]
at org.elasticsearch.gateway.MetaDataStateFormat.loadLatestState(MetaDataStateFormat.java:324) ~[elasticsearch-6.8.4.jar:6.8.4]
at org.elasticsearch.gateway.TransportNodesListGatewayStartedShards.nodeOperation(TransportNodesListGatewayStartedShards.java:127) ~[elasticsearch-6.8.4.jar:6.8.4]
at org.elasticsearch.gateway.TransportNodesListGatewayStartedShards.nodeOperation(TransportNodesListGatewayStartedShards.java:61) ~[elasticsearch-6.8.4.jar:6.8.4]
at org.elasticsearch.action.support.nodes.TransportNodesAction.nodeOperation(TransportNodesAction.java:138) ~[elasticsearch-6.8.4.jar:6.8.4]
at org.elasticsearch.action.support.nodes.TransportNodesAction$NodeTransportHandler.messageReceived(TransportNodesAction.java:259) ~[elasticsearch-6.8.4.jar:6.8.4]
at org.elasticsearch.action.support.nodes.TransportNodesAction$NodeTransportHandler.messageReceived(TransportNodesAction.java:255) ~[elasticsearch-6.8.4.jar:6.8.4]
at org.elasticsearch.transport.RequestHandlerRegistry.processMessageReceived(RequestHandlerRegistry.java:66) ~[elasticsearch-6.8.4.jar:6.8.4]
at org.elasticsearch.transport.TransportService$7.doRun(TransportService.java:692) ~[elasticsearch-6.8.4.jar:6.8.4]
at org.elasticsearch.common.util.concurrent.ThreadContext$ContextPreservingAbstractRunnable.doRun(ThreadContext.java:751) ~[elasticsearch-6.8.4.jar:6.8.4]
at org.elasticsearch.common.util.concurrent.AbstractRunnable.run(AbstractRunnable.java:37) ~[elasticsearch-6.8.4.jar:6.8.4]
... 3 more
Caused by: java.nio.file.NoSuchFileException: /opt/sonarqube/data/es6/nodes/0/indices/YV5t5w2eTt6idUoaW6e3ZA/_state/state-11.st
at sun.nio.fs.UnixException.translateToIOException(UnixException.java:92) ~[?:?]
at sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:111) ~[?:?]
at sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:116) ~[?:?]
at sun.nio.fs.UnixFileSystemProvider.newByteChannel(UnixFileSystemProvider.java:219) ~[?:?]
at java.nio.file.Files.newByteChannel(Files.java:370) ~[?:?]
at java.nio.file.Files.newByteChannel(Files.java:421) ~[?:?]
at org.apache.lucene.store.SimpleFSDirectory.openInput(SimpleFSDirectory.java:77) ~[lucene-core-7.7.2.jar:7.7.2 d4c30fc2856154f2c1fefc589eb7cd070a415b94 - janhoy - 2019-05-28 23:30:25]
at org.elasticsearch.gateway.MetaDataStateFormat.read(MetaDataStateFormat.java:183) ~[elasticsearch-6.8.4.jar:6.8.4]
at org.elasticsearch.gateway.MetaDataStateFormat.loadLatestStateWithGeneration(MetaDataStateFormat.java:296) ~[elasticsearch-6.8.4.jar:6.8.4]
at org.elasticsearch.gateway.MetaDataStateFormat.loadLatestState(MetaDataStateFormat.java:324) ~[elasticsearch-6.8.4.jar:6.8.4]
at org.elasticsearch.gateway.TransportNodesListGatewayStartedShards.nodeOperation(TransportNodesListGatewayStartedShards.java:127) ~[elasticsearch-6.8.4.jar:6.8.4]
at org.elasticsearch.gateway.TransportNodesListGatewayStartedShards.nodeOperation(TransportNodesListGatewayStartedShards.java:61) ~[elasticsearch-6.8.4.jar:6.8.4]
at org.elasticsearch.action.support.nodes.TransportNodesAction.nodeOperation(TransportNodesAction.java:138) ~[elasticsearch-6.8.4.jar:6.8.4]
at org.elasticsearch.action.support.nodes.TransportNodesAction$NodeTransportHandler.messageReceived(TransportNodesAction.java:259) ~[elasticsearch-6.8.4.jar:6.8.4]
at org.elasticsearch.action.support.nodes.TransportNodesAction$NodeTransportHandler.messageReceived(TransportNodesAction.java:255) ~[elasticsearch-6.8.4.jar:6.8.4]
at org.elasticsearch.transport.RequestHandlerRegistry.processMessageReceived(RequestHandlerRegistry.java:66) ~[elasticsearch-6.8.4.jar:6.8.4]
at org.elasticsearch.transport.TransportService$7.doRun(TransportService.java:692) ~[elasticsearch-6.8.4.jar:6.8.4]
at org.elasticsearch.common.util.concurrent.ThreadContext$ContextPreservingAbstractRunnable.doRun(ThreadContext.java:751) ~[elasticsearch-6.8.4.jar:6.8.4]
at org.elasticsearch.common.util.concurrent.AbstractRunnable.run(AbstractRunnable.java:37) ~[elasticsearch-6.8.4.jar:6.8.4]
... 3 more
2020.06.04 21:30:12 INFO  es[][o.e.c.r.a.AllocationService] Cluster health status changed from [RED] to [GREEN] (reason: [shards started [[components][0], [metadatas][0], [components][1]] ...]).

Hi,

Those are warnings, but if you want to be sure about them, then delete $SONARQUBE-HOME/data/es6 and let it rebuild the indices.

 
Ann

Thank you.

That worked!

I watched all the logs and they are very clean.

I re-invoke my original command that started this thread and I get the exact stack trace. I even went through the process of the following:

http://magicmonster.com/kb/prg/java/ssl/pkix_path_building_failed.html

Any other ideas?

We have a Developer license and thus far it has not worked at all.

I have a self-signed certificate on the server.

Should I obtain a trusted CA signed certificate?

Going to https://localhost:9001 yields some nastiness:

==> es.log <==

2020.06.05 13:15:48 WARN es[][o.e.t.TcpTransport] exception caught on transport layer [Netty4TcpChannel{localAddress=/127.0.0.1:9001, remoteAddress=/127.0.0.1:38526}], closing connection

io.netty.handler.codec.DecoderException: java.io.StreamCorruptedException: invalid internal transport message format, got (16,3,1,2)

at io.netty.handler.codec.ByteToMessageDecoder.callDecode(ByteToMessageDecoder.java:472) ~[netty-codec-4.1.32.Final.jar:4.1.32.Final]

at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:278) ~[netty-codec-4.1.32.Final.jar:4.1.32.Final]

at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) [netty-transport-4.1.32.Final.jar:4.1.32.Final]

at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) [netty-transport-4.1.32.Final.jar:4.1.32.Final]

at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) [netty-transport-4.1.32.Final.jar:4.1.32.Final]

at io.netty.handler.logging.LoggingHandler.channelRead(LoggingHandler.java:241) [netty-handler-4.1.32.Final.jar:4.1.32.Final]

at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) [netty-transport-4.1.32.Final.jar:4.1.32.Final]

at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) [netty-transport-4.1.32.Final.jar:4.1.32.Final]

at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) [netty-transport-4.1.32.Final.jar:4.1.32.Final]

at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1434) [netty-transport-4.1.32.Final.jar:4.1.32.Final]

at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) [netty-transport-4.1.32.Final.jar:4.1.32.Final]

at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) [netty-transport-4.1.32.Final.jar:4.1.32.Final]

at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:965) [netty-transport-4.1.32.Final.jar:4.1.32.Final]

at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:163) [netty-transport-4.1.32.Final.jar:4.1.32.Final]

at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:656) [netty-transport-4.1.32.Final.jar:4.1.32.Final]

at io.netty.channel.nio.NioEventLoop.processSelectedKeysPlain(NioEventLoop.java:556) [netty-transport-4.1.32.Final.jar:4.1.32.Final]

at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:510) [netty-transport-4.1.32.Final.jar:4.1.32.Final]

at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:470) [netty-transport-4.1.32.Final.jar:4.1.32.Final]

at io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:909) [netty-common-4.1.32.Final.jar:4.1.32.Final]

at java.lang.Thread.run(Thread.java:834) [?:?]

Caused by: java.io.StreamCorruptedException: invalid internal transport message format, got (16,3,1,2)

at org.elasticsearch.transport.TcpTransport.readHeaderBuffer(TcpTransport.java:851) ~[elasticsearch-6.8.4.jar:6.8.4]

at org.elasticsearch.transport.TcpTransport.readMessageLength(TcpTransport.java:837) ~[elasticsearch-6.8.4.jar:6.8.4]

at org.elasticsearch.transport.netty4.Netty4SizeHeaderFrameDecoder.decode(Netty4SizeHeaderFrameDecoder.java:40) ~[transport-netty4-client-6.8.4.jar:6.8.4]

at     io.netty.handler.codec.ByteToMessageDecoder.decodeRemovalReentryProtection(ByteToMessageDecoder.java:502) ~[netty-codec-4.1.32.Final.jar:4.1.32.Final]

at io.netty.handler.codec.ByteToMessageDecoder.callDecode(ByteToMessageDecoder.java:441) ~[netty-codec-4.1.32.Final.jar:4.1.32.Final]

... 19 more

I can remotely get to the following to login, browser and setup settings, everything:

https://ec2-w-x-y-z.us-east-2.compute.amazonaws.com/sonarqube/

However, executing:

$ sonar-scanner -X -Dsonar.projectKey=Some-Super-Duper-Project -Dsonar.sources=src -Dsonar.host.url=https://ec2-w-x-y-z.us-east-2.compute.amazonaws.com/sonarqube -Dsonar.login=key

results in

https://ec2-w-x-y-z.us-east-2.compute.amazonaws.com/sonarqube can not be reached

That simply does not make sense. There is not any evidence on the server-side that the client-side sonar-scanner request even reached the server at all.

Any ideas???

I had to resort to submitting the request to the local port 9000.

Now, I am certain there is a certificate problem using going from NGINX web server -> sonarqube localhost:9000.

Any ideas on how to resolve?

Looking at your original post it seems that you have an certificate issue between the scanner and SonarQube.

It may be that your browser is setup to trust the certificate used b SonarQube, and that the scanner is not able to validate the certificate used by SonarQube. This would explain the “weird” state that the browser works but the scanner doesn’t.

You can try to add the certificate used by SonarQube to the Java certificate trust-store and then try the scan again. Atlassian has a good help article here: How to import a public SSL certificate into a JVM | Atlassian Support | Atlassian Documentation then can help with importing the certificate file in your Java trust-store.

Thank you Mark for your response and research.

I re-created the certificate last Friday to match the URL as opposed to the server’s hostname. Now, I get a certificate verification problem. I know this is because verifying a self-signed certificate is a problem despite the adding the certificate to $JAVA_HOME/jre/lib/security/cacerts.

Caused by: javax.net.ssl.SSLPeerUnverifiedException: Hostname ec2-w-x-y-z.us-east-2.compute.amazonaws.com not verified:
certificate: sha256/bO9dFegibIg556puXQtvHdJiecsWl9w0Y21U2+wKrotNmT=
DN: CN=ec2-w-x-y-z.us-east-2.compute.amazonaws.com, OU=ou, O=o, L=city, ST=state, C=unitedstates
subjectAltNames: []

I am going to need to resort to CA-signed certificate to resolve.

I am closing this thread because this is beyond the scope of this site.

Once again, thank you for your help.

“-Djavax.net.ssl.trustStore”

You need to specify where the trustStore is…

Like so -

-Djavax.net.ssl.trustStore=$JAVA_HOME/jre/lib/security/cacerts

Thank you.

sonar-scanner has its own JRE which is adoptjdk 11.0.3 so you have to go there to modify the cacerts file, which I did when I started this investigation.

After adding the self-signed certificate to cacerts I execute the following:

$ sonar-scanner -X -Djavax.net.ssl.trustStore=/PATH/TO/SONAR/SCANNER/sonar-scanner/jre/lib/security/cacerts -Dsonar.projectKey=SOME_SUPER_DUPER_PROJECT -Dsonar.sources=. -Dsonar.host.url=https://ec2-w-x-y-z.us-east-2.compute.amazonaws.com/sonarqube -Dsonar.login=SOME_KEY

Regardless I get a certificate verification error:

.
.
Caused by: javax.net.ssl.SSLPeerUnverifiedException: Hostname ec2-w-x-yz.us-east-2.compute.amazonaws.com not verified:
certificate: sha256/bo94oegibIg5f6puXQtN3d8KsWl9w0Y21U2+wKrotBrE=
DN: CN=ec2-3-21-39-184.us-east-2.compute.amazonaws.com, OU=someOU, O=someO, L=someCity, ST=comeState, C=US
subjectAltNames: []

This topic was automatically closed 7 days after the last reply. New replies are no longer allowed.