You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
curseforge-mc-1 | [mc-image-helper] 10:53:25.508 WARN : [f5d13d46-1, L:/172.23.0.2:52200 ! R:api.curseforge.com/54.230.228.118:443] The connection observed an error
curseforge-mc-1 | reactor.netty.http.client.PrematureCloseException: Connection prematurely closed BEFORE response
curseforge-mc-1 | [mc-image-helper] 10:53:25.520 ERROR : Invalid parameter provided for 'install-curseforge' command: Access to https://api.curseforge.com is forbidden or rate-limit has been exceeded. Ensure CF_API_KEY is set to a valid API key from https://console.curseforge.com/ or allow rate-limit to reset.
Same user then reported this type of failure, which seems to be a 403 not caught correctly:
curseforge-mc-1 | [mc-image-helper] 18:16:19.057 ERROR : Operator called default onErrorDropped
curseforge-mc-1 | me.itzg.helpers.http.FailedRequestException: HTTP request of https://api.curseforge.com/v1/mods/351441/files/4613538 failed with 403 Forbidden: Fetching object content
curseforge-mc-1 | at me.itzg.helpers.http.FetchBuilderBase.lambda$failedRequestMono$2(FetchBuilderBase.java:220)
curseforge-mc-1 | Suppressed: reactor.core.publisher.FluxOnAssembly$OnAssemblyException:
curseforge-mc-1 | Assembly trace from producer [reactor.core.publisher.MonoMap] :
curseforge-mc-1 | reactor.core.publisher.Mono.checkpoint(Mono.java:2190)
curseforge-mc-1 | me.itzg.helpers.curseforge.CurseForgeApiClient.getModFileInfo(CurseForgeApiClient.java:223)
curseforge-mc-1 | Error has been observed at the following site(s):
curseforge-mc-1 | *__checkpoint() ⇢ at me.itzg.helpers.curseforge.CurseForgeApiClient.getModFileInfo(CurseForgeApiClient.java:223)
curseforge-mc-1 | *____checkpoint ⇢ Downloading file from modpack 351441:4613538
curseforge-mc-1 | |_ checkpoint() ⇢ at me.itzg.helpers.curseforge.CurseForgeInstaller.lambda$processModpack$15(CurseForgeInstaller.java:602)
curseforge-mc-1 | Original Stack Trace:
curseforge-mc-1 | at me.itzg.helpers.http.FetchBuilderBase.lambda$failedRequestMono$2(FetchBuilderBase.java:220)
curseforge-mc-1 | at reactor.core.publisher.MonoFlatMap$FlatMapMain.onNext(MonoFlatMap.java:132)
curseforge-mc-1 | at reactor.core.publisher.Operators$BaseFluxToMonoOperator.completePossiblyEmpty(Operators.java:2071)
curseforge-mc-1 | at reactor.core.publisher.FluxDefaultIfEmpty$DefaultIfEmptySubscriber.onComplete(FluxDefaultIfEmpty.java:134)
curseforge-mc-1 | at reactor.core.publisher.FluxHandle$HandleSubscriber.onComplete(FluxHandle.java:223)
curseforge-mc-1 | at reactor.core.publisher.FluxMap$MapConditionalSubscriber.onComplete(FluxMap.java:275)
curseforge-mc-1 | at reactor.core.publisher.FluxDoFinally$DoFinallySubscriber.onComplete(FluxDoFinally.java:128)
curseforge-mc-1 | at reactor.core.publisher.FluxHandleFuseable$HandleFuseableSubscriber.onNext(FluxHandleFuseable.java:211)
curseforge-mc-1 | at reactor.core.publisher.FluxContextWrite$ContextWriteSubscriber.onNext(FluxContextWrite.java:107)
curseforge-mc-1 | at reactor.core.publisher.Operators$BaseFluxToMonoOperator.completePossiblyEmpty(Operators.java:2071)
curseforge-mc-1 | at reactor.core.publisher.MonoCollectList$MonoCollectListSubscriber.onComplete(MonoCollectList.java:118)
curseforge-mc-1 | at reactor.core.publisher.FluxPeek$PeekSubscriber.onComplete(FluxPeek.java:260)
curseforge-mc-1 | at reactor.core.publisher.FluxMap$MapSubscriber.onComplete(FluxMap.java:144)
curseforge-mc-1 | at reactor.netty.channel.FluxReceive.onInboundComplete(FluxReceive.java:415)
curseforge-mc-1 | at reactor.netty.channel.ChannelOperations.onInboundComplete(ChannelOperations.java:445)
curseforge-mc-1 | at reactor.netty.channel.ChannelOperations.terminate(ChannelOperations.java:499)
curseforge-mc-1 | at reactor.netty.http.client.HttpClientOperations.onInboundNext(HttpClientOperations.java:800)
curseforge-mc-1 | at reactor.netty.channel.ChannelOperationsHandler.channelRead(ChannelOperationsHandler.java:115)
curseforge-mc-1 | at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:444)
curseforge-mc-1 | at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:420)
curseforge-mc-1 | at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:412)
curseforge-mc-1 | at io.netty.handler.timeout.IdleStateHandler.channelRead(IdleStateHandler.java:289)
curseforge-mc-1 | at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:442)
curseforge-mc-1 | at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:420)
curseforge-mc-1 | at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:412)
curseforge-mc-1 | at io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext.fireChannelRead(CombinedChannelDuplexHandler.java:436)
curseforge-mc-1 | at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:346)
curseforge-mc-1 | at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:318)
curseforge-mc-1 | at io.netty.channel.CombinedChannelDuplexHandler.channelRead(CombinedChannelDuplexHandler.java:251)
curseforge-mc-1 | at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:442)
curseforge-mc-1 | at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:420)
curseforge-mc-1 | at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:412)
curseforge-mc-1 | at io.netty.handler.ssl.SslHandler.unwrap(SslHandler.java:1473)
curseforge-mc-1 | at io.netty.handler.ssl.SslHandler.decodeJdkCompatible(SslHandler.java:1336)
curseforge-mc-1 | at io.netty.handler.ssl.SslHandler.decode(SslHandler.java:1385)
curseforge-mc-1 | at io.netty.handler.codec.ByteToMessageDecoder.decodeRemovalReentryProtection(ByteToMessageDecoder.java:530)
curseforge-mc-1 | at io.netty.handler.codec.ByteToMessageDecoder.callDecode(ByteToMessageDecoder.java:469)
curseforge-mc-1 | at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:290)
curseforge-mc-1 | at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:444)
curseforge-mc-1 | at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:420)
curseforge-mc-1 | at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:412)
curseforge-mc-1 | at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1407)
curseforge-mc-1 | at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:440)
curseforge-mc-1 | at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:420)
curseforge-mc-1 | at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:918)
curseforge-mc-1 | at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:166)
curseforge-mc-1 | at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:788)
curseforge-mc-1 | at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:724)
curseforge-mc-1 | at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:650)
curseforge-mc-1 | at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:562)
curseforge-mc-1 | at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:994)
curseforge-mc-1 | at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74)
curseforge-mc-1 | at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
curseforge-mc-1 | at java.base/java.lang.Thread.run(Unknown Source)
curseforge-mc-1 | [mc-image-helper] 18:16:19.069 ERROR : Invalid parameter provided for 'install-curseforge' command: Access to https://api.curseforge.com is forbidden or rate-limit has been exceeded. Ensure CF_API_KEY is set to a valid API key from https://console.curseforge.com/ or allow rate-limit to reset.
The text was updated successfully, but these errors were encountered:
Discussed in Discord
Same user then reported this type of failure, which seems to be a 403 not caught correctly:
The text was updated successfully, but these errors were encountered: