SonarCloud Analysis in BitBucket pipeline Connection Unstable

We are using the type script scanner to check our code. There seems to be some stability issues connecting to the bridge server being used since we are seeing connection reset errors in the pipeline log.


15:53:20.860 DEBUG: Shutting down the worker

15:53:57.091 ERROR: isAlive was interrupted

java.lang.InterruptedException: null

	at java.base/java.util.concurrent.CompletableFuture.reportGet(CompletableFuture.java:386)

	at java.base/java.util.concurrent.CompletableFuture.get(CompletableFuture.java:2073)

	at java.net.http/jdk.internal.net.http.HttpClientImpl.send(HttpClientImpl.java:553)

	at java.net.http/jdk.internal.net.http.HttpClientFacade.send(HttpClientFacade.java:123)

	at org.sonar.plugins.javascript.bridge.BridgeServerImpl.isAlive(BridgeServerImpl.java:431)

	at org.sonar.plugins.javascript.bridge.BridgeServerImpl.heartbeat(BridgeServerImpl.java:139)

	at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539)

	at java.base/java.util.concurrent.FutureTask.runAndReset(FutureTask.java:305)

	at java.base/java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:305)

	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)

	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)

	at java.base/java.lang.Thread.run(Thread.java:833)


16:02:39.281 DEBUG: Shutting down the worker

16:08:06.643 WARN: Stopping of component org.sonar.plugins.javascript.bridge.BridgeServerImpl failed

java.lang.IllegalStateException: The bridge server is unresponsive

	at org.sonar.plugins.javascript.bridge.BridgeServerImpl.request(BridgeServerImpl.java:401)

	at org.sonar.plugins.javascript.bridge.BridgeServerImpl.clean(BridgeServerImpl.java:511)

	at org.sonar.plugins.javascript.bridge.BridgeServerImpl.stop(BridgeServerImpl.java:545)

	at org.sonar.core.platform.StartableCloseableSafeLifecyleStrategy.stop(StartableCloseableSafeLifecyleStrategy.java:38)

	at org.picocontainer.injectors.AbstractInjectionFactory$LifecycleAdapter.stop(AbstractInjectionFactory.java:88)

	at org.picocontainer.behaviors.AbstractBehavior.stop(AbstractBehavior.java:179)

	at org.picocontainer.behaviors.Stored$RealComponentLifecycle.stop(Stored.java:141)

	at org.picocontainer.behaviors.Stored.stop(Stored.java:118)

	at org.picocontainer.DefaultPicoContainer.stopAdapters(DefaultPicoContainer.java:1048)

	at org.picocontainer.DefaultPicoContainer.stop(DefaultPicoContainer.java:803)

	at org.sonar.core.platform.ComponentContainer.stopComponents(ComponentContainer.java:152)

	at org.sonar.core.platform.ComponentContainer.execute(ComponentContainer.java:111)

	at org.sonar.scanner.bootstrap.ScannerContainer.doAfterStart(ScannerContainer.java:397)

	at org.sonar.core.platform.ComponentContainer.startComponents(ComponentContainer.java:123)

	at org.sonar.core.platform.ComponentContainer.execute(ComponentContainer.java:109)

	at org.sonar.scanner.bootstrap.GlobalContainer.doAfterStart(GlobalContainer.java:125)

	at org.sonar.core.platform.ComponentContainer.startComponents(ComponentContainer.java:123)

	at org.sonar.core.platform.ComponentContainer.execute(ComponentContainer.java:109)

	at org.sonar.batch.bootstrapper.Batch.doExecute(Batch.java:57)

	at org.sonar.batch.bootstrapper.Batch.execute(Batch.java:51)

	at org.sonarsource.scanner.api.internal.batch.BatchIsolatedLauncher.execute(BatchIsolatedLauncher.java:46)

	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)

	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

	at java.base/java.lang.reflect.Method.invoke(Method.java:568)

	at org.sonarsource.scanner.api.internal.IsolatedLauncherProxy.invoke(IsolatedLauncherProxy.java:60)

	at jdk.proxy1/jdk.proxy1.$Proxy0.execute(Unknown Source)

	at org.sonarsource.scanner.api.EmbeddedScanner.doExecute(EmbeddedScanner.java:189)

	at org.sonarsource.scanner.api.EmbeddedScanner.execute(EmbeddedScanner.java:138)

	at org.sonarsource.scanner.cli.Main.execute(Main.java:126)

	at org.sonarsource.scanner.cli.Main.execute(Main.java:81)

	at org.sonarsource.scanner.cli.Main.main(Main.java:62)

Caused by: java.io.IOException: HTTP/1.1 header parser received no bytes

	at java.net.http/jdk.internal.net.http.HttpClientImpl.send(HttpClientImpl.java:586)

	at java.net.http/jdk.internal.net.http.HttpClientFacade.send(HttpClientFacade.java:123)

	at org.sonar.plugins.javascript.bridge.BridgeServerImpl.request(BridgeServerImpl.java:396)

	... 31 common frames omitted

Caused by: java.io.IOException: HTTP/1.1 header parser received no bytes

	at java.net.http/jdk.internal.net.http.common.Utils.wrapWithExtraDetail(Utils.java:348)

	at java.net.http/jdk.internal.net.http.Http1Response$HeadersReader.onReadError(Http1Response.java:675)

	at java.net.http/jdk.internal.net.http.Http1AsyncReceiver.checkForErrors(Http1AsyncReceiver.java:302)

	at java.net.http/jdk.internal.net.http.Http1AsyncReceiver.flush(Http1AsyncReceiver.java:268)

	at java.net.http/jdk.internal.net.http.common.SequentialScheduler$LockingRestartableTask.run(SequentialScheduler.java:205)

	at java.net.http/jdk.internal.net.http.common.SequentialScheduler$CompleteRestartableTask.run(SequentialScheduler.java:149)

	at java.net.http/jdk.internal.net.http.common.SequentialScheduler$SchedulableTask.run(SequentialScheduler.java:230)

	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)

	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)

	at java.base/java.lang.Thread.run(Thread.java:833)

Caused by: java.net.SocketException: Connection reset

	at java.base/sun.nio.ch.SocketChannelImpl.throwConnectionReset(SocketChannelImpl.java:394)

	at java.base/sun.nio.ch.SocketChannelImpl.read(SocketChannelImpl.java:426)

	at java.net.http/jdk.internal.net.http.SocketTube.readAvailable(SocketTube.java:1170)

	at java.net.http/jdk.internal.net.http.SocketTube$InternalReadPublisher$InternalReadSubscription.read(SocketTube.java:833)

	at java.net.http/jdk.internal.net.http.SocketTube$SocketFlowTask.run(SocketTube.java:181)

	at java.net.http/jdk.internal.net.http.common.SequentialScheduler$SchedulableTask.run(SequentialScheduler.java:230)

	at java.net.http/jdk.internal.net.http.common.SequentialScheduler.runOrSchedule(SequentialScheduler.java:303)

	at java.net.http/jdk.internal.net.http.common.SequentialScheduler.runOrSchedule(SequentialScheduler.java:256)

	at java.net.http/jdk.internal.net.http.SocketTube$InternalReadPublisher$InternalReadSubscription.signalReadable(SocketTube.java:774)

	at java.net.http/jdk.internal.net.http.SocketTube$InternalReadPublisher$ReadEvent.signalEvent(SocketTube.java:957)

	at java.net.http/jdk.internal.net.http.SocketTube$SocketFlowEvent.handle(SocketTube.java:253)

	at java.net.http/jdk.internal.net.http.HttpClientImpl$SelectorManager.handleEvent(HttpClientImpl.java:979)

	at java.net.http/jdk.internal.net.http.HttpClientImpl$SelectorManager.lambda$run$3(HttpClientImpl.java:934)

	at java.base/java.util.ArrayList.forEach(ArrayList.java:1511)

	at java.net.http/jdk.internal.net.http.HttpClientImpl$SelectorManager.run(HttpClientImpl.java:934)


Hey there.

Can you share the DEBUG logs (sonar-scanner -X or setting sonar.verbose=true)?