I am experiencing intermittent "no connection" errors while using the Cloud Workstations plugin within JetBrains Gateway. This happens both when idle and during active typing.
026-02-09 08:07:19,682 [2475001] WARN - #com.google.cloud.workstations.ide.jetbrains.connector.connection.TcpListener$Companion - TcpListener#onError
java.net.SocketException: Connection reset
at java.base/sun.nio.ch.SocketChannelImpl.throwConnectionReset(SocketChannelImpl.java:401)
at java.base/sun.nio.ch.SocketChannelImpl.read(SocketChannelImpl.java:434)
at java.net.http/jdk.internal.net.http.SocketTube.readAvailable(SocketTube.java:1178)
at java.net.http/jdk.internal.net.http.SocketTube$InternalReadPublisher$InternalReadSubscription.read(SocketTube.java:841)
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:207)
at java.net.http/jdk.internal.net.http.common.SequentialScheduler.runOrSchedule(SequentialScheduler.java:280)
at java.net.http/jdk.internal.net.http.common.SequentialScheduler.runOrSchedule(SequentialScheduler.java:233)
at java.net.http/jdk.internal.net.http.SocketTube$InternalReadPublisher$InternalReadSubscription.signalReadable(SocketTube.java:782)
at java.net.http/jdk.internal.net.http.SocketTube$InternalReadPublisher$ReadEvent.signalEvent(SocketTube.java:965)
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:1477)
at java.net.http/jdk.internal.net.http.HttpClientImpl$SelectorManager.lambda$run$3(HttpClientImpl.java:1422)
at java.base/java.util.ArrayList.forEach(ArrayList.java:1596)
at java.net.http/jdk.internal.net.http.HttpClientImpl$SelectorManager.run(HttpClientImpl.java:1422)
2026-02-09 08:07:19,708 [2475027] SEVERE - #c.i.o.a.i.CoroutineExceptionHandlerImpl - Unhandled exception in Dispatchers.Default
java.util.concurrent.CompletionException: java.io.IOException: Output closed
at java.base/java.util.concurrent.CompletableFuture.reportJoin(CompletableFuture.java:413)
at java.base/java.util.concurrent.CompletableFuture.join(CompletableFuture.java:2118)
at com.google.cloud.workstations.ide.jetbrains.connector.connection.TcpListener$onOpen$1.invokeSuspend(TcpListener.kt:42)
at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:100)
at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:613)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:1189)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:778)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:765)
Caused by: java.io.IOException: Output closed
at java.net.http/jdk.internal.net.http.websocket.TransportImpl$SendTask.tryCompleteWrite(TransportImpl.java:619)
at java.net.http/jdk.internal.net.http.websocket.TransportImpl$SendTask.run(TransportImpl.java:557)
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:207)
at java.net.http/jdk.internal.net.http.common.SequentialScheduler.runOrSchedule(SequentialScheduler.java:280)
at java.net.http/jdk.internal.net.http.common.SequentialScheduler.runOrSchedule(SequentialScheduler.java:233)
at java.net.http/jdk.internal.net.http.websocket.TransportImpl.sendBinary(TransportImpl.java:174)
at java.net.http/jdk.internal.net.http.websocket.WebSocketImpl.sendBinary(WebSocketImpl.java:216)
... 7 more
2026-02-09 08:07:19,710 [2475029] SEVERE - #c.i.o.a.i.CoroutineExceptionHandlerImpl - JetBrains Gateway 2025.2.5 Build #GW-252.28238.6
2026-02-09 08:07:19,710 [2475029] SEVERE - #c.i.o.a.i.CoroutineExceptionHandlerImpl - JDK: 21.0.9; VM: OpenJDK 64-Bit Server VM; Vendor: JetBrains s.r.o.
2026-02-09 08:07:19,710 [2475029] SEVERE - #c.i.o.a.i.CoroutineExceptionHandlerImpl - OS: Linux
2026-02-09 08:07:19,711 [2475030] SEVERE - #c.i.o.a.i.CoroutineExceptionHandlerImpl - Plugin to blame: Cloud Workstations version: 25.8.1-api-version-242
2026-02-09 08:07:19,711 [2475030] SEVERE - #c.i.o.a.i.CoroutineExceptionHandlerImpl - Last Action:
2026-02-09 08:07:19,716 [2475035] INFO - STDERR - Exception in thread "DefaultDispatcher-worker-1" java.util.concurrent.CompletionException: java.io.IOException: Output closed
2026-02-09 08:07:19,717 [2475036] INFO - STDERR - at java.base/java.util.concurrent.CompletableFuture.reportJoin(CompletableFuture.java:413)
2026-02-09 08:07:19,717 [2475036] INFO - STDERR - at java.base/java.util.concurrent.CompletableFuture.join(CompletableFuture.java:2118)
2026-02-09 08:07:19,717 [2475036] INFO - STDERR - at com.google.cloud.workstations.ide.jetbrains.connector.connection.TcpListener$onOpen$1.invokeSuspend(TcpListener.kt:42)
2026-02-09 08:07:19,717 [2475036] INFO - STDERR - at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
2026-02-09 08:07:19,717 [2475036] INFO - STDERR - at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:100)
2026-02-09 08:07:19,717 [2475036] INFO - STDERR - at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:613)
2026-02-09 08:07:19,717 [2475036] INFO - STDERR - at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:1189)
2026-02-09 08:07:19,717 [2475036] INFO - STDERR - at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:778)
2026-02-09 08:07:19,717 [2475036] INFO - STDERR - at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:765)
2026-02-09 08:07:19,719 [2475038] INFO - STDERR - Suppressed: kotlinx.coroutines.internal.DiagnosticCoroutineContextException: [StandaloneCoroutine{Cancelling}@79ff4607, Dispatchers.Default]
2026-02-09 08:07:19,719 [2475038] INFO - STDERR - Caused by: java.io.IOException: Output closed
2026-02-09 08:07:19,719 [2475038] INFO - STDERR - at java.net.http/jdk.internal.net.http.websocket.TransportImpl$SendTask.tryCompleteWrite(TransportImpl.java:619)
2026-02-09 08:07:19,719 [2475038] INFO - STDERR - at java.net.http/jdk.internal.net.http.websocket.TransportImpl$SendTask.run(TransportImpl.java:557)
2026-02-09 08:07:19,719 [2475038] INFO - STDERR - at java.net.http/jdk.internal.net.http.common.SequentialScheduler$CompleteRestartableTask.run(SequentialScheduler.java:149)
2026-02-09 08:07:19,719 [2475038] INFO - STDERR - at java.net.http/jdk.internal.net.http.common.SequentialScheduler$SchedulableTask.run(SequentialScheduler.java:207)
2026-02-09 08:07:19,719 [2475038] INFO - STDERR - at java.net.http/jdk.internal.net.http.common.SequentialScheduler.runOrSchedule(SequentialScheduler.java:280)
2026-02-09 08:07:19,719 [2475038] INFO - STDERR - at java.net.http/jdk.internal.net.http.common.SequentialScheduler.runOrSchedule(SequentialScheduler.java:233)
2026-02-09 08:07:19,719 [2475038] INFO - STDERR - at java.net.http/jdk.internal.net.http.websocket.TransportImpl.sendBinary(TransportImpl.java:174)
2026-02-09 08:07:19,719 [2475038] INFO - STDERR - at java.net.http/jdk.internal.net.http.websocket.WebSocketImpl.sendBinary(WebSocketImpl.java:216)
2026-02-09 08:07:19,720 [2475039] INFO - STDERR - ... 7 more
Version Information
JetBrains Gateway version: 2025.2.5 (Build #GW-252.28238.6)
Cloud Workstations plugin version: 25.8.1-api-version-242
Details
I am experiencing intermittent "no connection" errors while using the Cloud Workstations plugin within JetBrains Gateway. This happens both when idle and during active typing.
Environment:
Log of Gateway: