itzg / itzg/docker-minecraft-server
CurseForge install times out
Nobody has claimed this yet.
- Dominant language
- Shell
- Stars
- 14.3k
- Forks
- 1.9k
- Avg merge
- 2d 10h
- Merged PRs (30d)
- 31
Description
### Describe the problem
I'm trying to run an 'All The Mods 8' server, but it keeps timing out whilst downloading assets. Every time the container restarts, it downloads just a few more mods before eventually timing out. It looks like the overall timeout is 45s, which is pretty low imo. Is there anyway to increase this? I don't see anything in the documentation.
```
minecraft-cf-atm8-0 minecraft-server [mc-image-helper] 11:33:08.118 ERROR : 'install-curseforge' command failed. Version is 1.26.2
minecraft-cf-atm8-0 minecraft-server reactor.core.Exceptions$ReactiveException: reactor.netty.internal.shaded.reactor.pool.PoolAcquireTimeoutException: Pool#acquire(Duration) has been pending for more than the configured timeout of 45000ms
minecraft-cf-atm8-0 minecraft-server at reactor.core.Exceptions.propagate(Exceptions.java:408)
minecraft-cf-atm8-0 minecraft-server at reactor.core.publisher.BlockingSingleSubscriber.blockingGet(BlockingSingleSubscriber.java:97)
minecraft-cf-atm8-0 minecraft-server at reactor.core.publisher.Mono.block(Mono.java:1710)
minecraft-cf-atm8-0 minecraft-server at me.itzg.helpers.curseforge.CurseForgeInstaller.processModpackZip(CurseForgeInstaller.java:434)
minecraft-cf-atm8-0 minecraft-server at me.itzg.helpers.curseforge.CurseForgeInstaller.downloadAndProcessModpackZip(CurseForgeInstaller.java:385)
minecraft-cf-atm8-0 minecraft-server at me.itzg.helpers.curseforge.CurseForgeInstaller.processModPack(CurseForgeInstaller.java:275)
minecraft-cf-atm8-0 minecraft-server at me.itzg.helpers.curseforge.CurseForgeInstaller.installByRetrievingModpackZip(CurseForgeInstaller.java:169)
minecraft-cf-atm8-0 minecraft-server at me.itzg.helpers.curseforge.CurseForgeInstaller.install(CurseForgeInstaller.java:138)
minecraft-cf-atm8-0 minecraft-server at me.itzg.helpers.curseforge.CurseForgeInstaller.install(CurseForgeInstaller.java:102)
minecraft-cf-atm8-0 minecraft-server at me.itzg.helpers.curseforge.InstallCurseForgeCommand.call(InstallCurseForgeCommand.java:180)
minecraft-cf-atm8-0 minecraft-server at me.itzg.helpers.curseforge.InstallCurseForgeCommand.call(InstallCurseForgeCommand.java:24)
minecraft-cf-atm8-0 minecraft-server at picocli.CommandLine.executeUserObject(CommandLine.java:2041)
minecraft-cf-atm8-0 minecraft-server at picocli.CommandLine.access$1500(CommandLine.java:148)
minecraft-cf-atm8-0 minecraft-server at picocli.CommandLine$RunLast.executeUserObjectOfLastSubcommandWithSameParent(CommandLine.java:2461)
minecraft-cf-atm8-0 minecraft-server at picocli.CommandLine$RunLast.handle(CommandLine.java:2453)
minecraft-cf-atm8-0 minecraft-server at picocli.CommandLine$RunLast.handle(CommandLine.java:2415)
minecraft-cf-atm8-0 minecraft-server at picocli.CommandLine$AbstractParseResultHandler.execute(CommandLine.java:2273)
minecraft-cf-atm8-0 minecraft-server at picocli.CommandLine$RunLast.execute(CommandLine.java:2417)
minecraft-cf-atm8-0 minecraft-server at picocli.CommandLine.execute(CommandLine.java:2170)
minecraft-cf-atm8-0 minecraft-server at me.itzg.helpers.McImageHelper.main(McImageHelper.java:132)
minecraft-cf-atm8-0 minecraft-server Suppressed: java.lang.Exception: #block terminated with an error
minecraft-cf-atm8-0 minecraft-server at reactor.core.publisher.BlockingSingleSubscriber.blockingGet(BlockingSingleSubscriber.java:99)
minecraft-cf-atm8-0 minecraft-server ... 18 common frames omitted
minecraft-cf-atm8-0 minecraft-server Caused by: reactor.netty.internal.shaded.reactor.pool.PoolAcquireTimeoutException: Pool#acquire(Duration) has been pending for more than the configured timeout of 45000ms
minecraft-cf-atm8-0 minecraft-server at reactor.netty.internal.shaded.reactor.pool.AbstractPool$Borrower.run(AbstractPool.java:413)
minecraft-cf-atm8-0 minecraft-server at reactor.core.scheduler.SchedulerTask.call(SchedulerTask.java:68)
minecraft-cf-atm8-0 minecraft-server at reactor.core.scheduler.SchedulerTask.call(SchedulerTask.java:28)
minecraft-cf-atm8-0 minecraft-server at java.base/java.util.concurrent.FutureTask.run(Unknown Source)
minecraft-cf-atm8-0 minecraft-server at java.base/java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(Unknown Source)
minecraft-cf-atm8-0 minecraft-server at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
minecraft-cf-atm8-0 minecraft-server at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
minecraft-cf-atm8-0 minecraft-server at java.base/java.lang.Thread.run(Unknown Source)
minecraft-cf-atm8-0 minecraft-server [init] ERROR failed to auto-install CurseForge modpack
```
### Container definition
https://github.com/uhthomas/automata/blob/294172e7fc94f980a90ed97072a681983e935f23/k8s/unwind/minecraft/cf_atm8/stateful_set_list.cue#L34-L68
### Container logs
See above.
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with the install-curseforge command and CurseForgeInstaller.java, especially the path ending at line 434 where the 45000ms pool-acquire timeout is reported. Trace where that timeout is configured and whether the command exposes an override. Done means a user can increase the timeout for this installation path and the supported setting is documented.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- docker, java
- Domain
- devops
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100