-
Notifications
You must be signed in to change notification settings - Fork 5
Open
Description
I've introduced the mc-runtime-test and mc-server-test actions into several Hex Casting-related projects, and all of them have recently started running into frequent but intermittent failures caused by an HTTP timeout while fetching version.json. Manually rerunning the job often resolves the timeout.
Example of a workflow run that failed due to this issue: https://github.com/FallingColors/HexMod/actions/runs/18510809336/job/52751586190
Traceback:
[21:45:54] [main/INFO] [ServerLauncher]: Launching server to create EULA...
[21:45:59] [main/SEVERE] [AbstractLaunchProcessLifecycle]: Failed to start Minecraft on try 0
me.earth.headlessmc.api.command.CommandException: Failed to read Version 1.20.1
at me.earth.headlessmc.launcher.server.ServerLauncher.getVersion(ServerLauncher.java:258)
at me.earth.headlessmc.launcher.server.ServerLauncher.launch0(ServerLauncher.java:116)
at me.earth.headlessmc.launcher.server.ServerLauncher.eulaLaunch(ServerLauncher.java:72)
at me.earth.headlessmc.launcher.server.ServerLauncher.launch(ServerLauncher.java:90)
at me.earth.headlessmc.launcher.server.commands.LaunchServerCommand$ServerLaunchProcessLifecycle.createProcess(LaunchServerCommand.java:52)
at me.earth.headlessmc.launcher.command.AbstractLaunchProcessLifecycle.runProcess(AbstractLaunchProcessLifecycle.java:133)
at me.earth.headlessmc.launcher.command.AbstractLaunchProcessLifecycle.run(AbstractLaunchProcessLifecycle.java:60)
at me.earth.headlessmc.launcher.server.commands.LaunchServerCommand.execute(LaunchServerCommand.java:25)
at me.earth.headlessmc.launcher.server.commands.LaunchServerCommand.execute(LaunchServerCommand.java:16)
at me.earth.headlessmc.launcher.command.FindByCommand.execute(FindByCommand.java:42)
at me.earth.headlessmc.api.command.CommandContextImpl.executeCommand(CommandContextImpl.java:54)
at me.earth.headlessmc.api.command.CommandContextImpl.execute(CommandContextImpl.java:33)
at me.earth.headlessmc.launcher.server.commands.ServerCommandContext.execute(ServerCommandContext.java:37)
at me.earth.headlessmc.launcher.server.ServerCommand.execute(ServerCommand.java:45)
at me.earth.headlessmc.api.command.CommandContextImpl.executeCommand(CommandContextImpl.java:54)
at me.earth.headlessmc.api.command.CommandContextImpl.execute(CommandContextImpl.java:33)
at me.earth.headlessmc.api.command.line.CommandLine.lambda$new$0(CommandLine.java:45)
at me.earth.headlessmc.launcher.QuickExitCliHandler.checkQuickExit(QuickExitCliHandler.java:47)
at me.earth.headlessmc.launcher.Main.runHeadlessMc(Main.java:57)
at me.earth.headlessmc.launcher.Main.main(Main.java:20)
Caused by: java.net.http.HttpConnectTimeoutException: HTTP connect timed out
at java.net.http/jdk.internal.net.http.HttpClientImpl.send(HttpClientImpl.java:568)
at java.net.http/jdk.internal.net.http.HttpClientFacade.send(HttpClientFacade.java:123)
at net.lenni0451.commons.httpclient.executor.HttpClientExecutor.execute(HttpClientExecutor.java:48)
at net.lenni0451.commons.httpclient.HttpClient.execute(HttpClient.java:232)
at net.lenni0451.commons.httpclient.requests.HttpRequest.execute(HttpRequest.java:213)
at me.earth.headlessmc.launcher.download.DownloadService.get(DownloadService.java:70)
at me.earth.headlessmc.launcher.download.DownloadService.download(DownloadService.java:55)
at me.earth.headlessmc.launcher.command.download.VersionInfoUtil.toVersion(VersionInfoUtil.java:27)
at me.earth.headlessmc.launcher.server.ServerLauncher.getVersion(ServerLauncher.java:256)
... 19 more
Caused by: java.net.http.HttpConnectTimeoutException: HTTP connect timed out
at java.net.http/jdk.internal.net.http.MultiExchange.toTimeoutException(MultiExchange.java:580)
at java.net.http/jdk.internal.net.http.MultiExchange.getExceptionalCF(MultiExchange.java:527)
at java.net.http/jdk.internal.net.http.MultiExchange.lambda$responseAsyncImpl$7(MultiExchange.java:447)
at java.base/java.util.concurrent.CompletableFuture.uniHandle(CompletableFuture.java:934)
at java.base/java.util.concurrent.CompletableFuture$UniHandle.tryFire(CompletableFuture.java:911)
at java.base/java.util.concurrent.CompletableFuture.postComplete(CompletableFuture.java:510)
at java.base/java.util.concurrent.CompletableFuture.completeExceptionally(CompletableFuture.java:2162)
at java.net.http/jdk.internal.net.http.common.SSLFlowDelegate.stopOnError(SSLFlowDelegate.java:997)
at java.base/java.util.concurrent.CompletableFuture.uniExceptionally(CompletableFuture.java:990)
at java.base/java.util.concurrent.CompletableFuture$UniExceptionally.tryFire(CompletableFuture.java:974)
at java.base/java.util.concurrent.CompletableFuture.postComplete(CompletableFuture.java:510)
at java.base/java.util.concurrent.CompletableFuture.completeExceptionally(CompletableFuture.java:2162)
at java.net.http/jdk.internal.net.http.common.SubscriberWrapper$DownstreamPusher.run1(SubscriberWrapper.java:295)
at java.net.http/jdk.internal.net.http.common.SubscriberWrapper$DownstreamPusher.run(SubscriberWrapper.java:259)
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.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.common.SubscriberWrapper.errorCommon(SubscriberWrapper.java:419)
at java.net.http/jdk.internal.net.http.common.SSLFlowDelegate$Reader.errorCommon(SSLFlowDelegate.java:380)
at java.net.http/jdk.internal.net.http.common.SubscriberWrapper.onError(SubscriberWrapper.java:410)
at java.net.http/jdk.internal.net.http.SocketTube$InternalReadPublisher$ReadSubscription.signalCompletion(SocketTube.java:637)
at java.net.http/jdk.internal.net.http.SocketTube$InternalReadPublisher$InternalReadSubscription.read(SocketTube.java:821)
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.signalError(SocketTube.java:770)
at java.net.http/jdk.internal.net.http.SocketTube.signalClosed(SocketTube.java:159)
at java.net.http/jdk.internal.net.http.PlainHttpConnection.close(PlainHttpConnection.java:372)
at java.net.http/jdk.internal.net.http.AsyncSSLConnection.close(AsyncSSLConnection.java:111)
at java.net.http/jdk.internal.net.http.Exchange$ConnectionAborter.closeConnection(Exchange.java:194)
at java.net.http/jdk.internal.net.http.Exchange$ConnectionAborter.closeConnection(Exchange.java:178)
at java.net.http/jdk.internal.net.http.Exchange.cancel(Exchange.java:277)
at java.net.http/jdk.internal.net.http.MultiExchange.cancel(MultiExchange.java:260)
at java.net.http/jdk.internal.net.http.PlainHttpConnection$ConnectTimerEvent.handle(PlainHttpConnection.java:102)
at java.net.http/jdk.internal.net.http.HttpClientImpl.purgeTimeoutsAndReturnNextDeadline(HttpClientImpl.java:1275)
at java.net.http/jdk.internal.net.http.HttpClientImpl$SelectorManager.run(HttpClientImpl.java:904)
Caused by: java.net.ConnectException: HTTP connect timed out
at java.net.http/jdk.internal.net.http.MultiExchange.toTimeoutException(MultiExchange.java:581)
... 38 more
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels