nea89o / Firmament

Hypixel SkyBlock mod for 1.20.
https://modrinth.com/mod/firmament
37 stars 4 forks source link

Too many open files #5

Closed DrNulll closed 8 months ago

DrNulll commented 8 months ago

When I launch the game and try to connect to hypixel I get this issue, unless I delete all data for the mod in folders. (Fresh install)

[04:09:53] [DefaultDispatcher-worker-6/INFO]: Download repository zip file to /tmp/firmament-repo9221032330668853189.zip. Deleting old repository [04:09:53] [DefaultDispatcher-worker-1/INFO]: Extracting new repository [04:09:53] [DefaultDispatcher-worker-1/ERROR]: Uncaught exception in thread "DefaultDispatcher-worker-1" java.nio.file.FileSystemException: .firmament/repo-extracted/items/PET_SKIN_PHOENIX_ICE.json: Too many open files at sun.nio.fs.UnixException.translateToIOException(UnixException.java:100) ~[?:?] at sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:106) ~[?:?] at sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:111) ~[?:?] at sun.nio.fs.UnixFileSystemProvider.newByteChannel(UnixFileSystemProvider.java:218) ~[?:?] at java.nio.file.spi.FileSystemProvider.newOutputStream(FileSystemProvider.java:484) ~[?:?] at java.nio.file.Files.newOutputStream(Files.java:228) ~[?:?] at moe.nea.firmament.repo.RepoDownloadManager.extractNewRepository(RepoDownloadManager.kt:117) ~[Firmament-1.1.0.jar:?] at moe.nea.firmament.repo.RepoDownloadManager.access$extractNewRepository(RepoDownloadManager.kt:28) ~[Firmament-1.1.0.jar:?] at moe.nea.firmament.repo.RepoDownloadManager$downloadUpdate$2$2.invokeSuspend(RepoDownloadManager.kt:92) ~[Firmament-1.1.0.jar:?] at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33) ~[org_jetbrains_kotlin_kotlin-stdlib-1.9.10-322b6d1b226d3ad5.jar:?] at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:108) ~[org_jetbrains_kotlinx_kotlinx-coe-jvm-1.7.3-cb5d5a55314c70b3.jar:?] at kotlinx.coroutines.internal.LimitedDispatcher$Worker.run(LimitedDispatcher.kt:115) ~[org_jetbrains_kotlinx_kotlinx-coe-jvm-1.7.3-cb5d5a55314c70b3.jar:?] at kotlinx.coroutines.scheduling.TaskImpl.run(Tasks.kt:103) ~[org_jetbrains_kotlinx_kotlinx-coe-jvm-1.7.3-cb5d5a55314c70b3.jar:?] at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:584) ~[org_jetbrains_kotlinx_kotlinx-coe-jvm-1.7.3-cb5d5a55314c70b3.jar:?] at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:793) ~[org_jetbrains_kotlinx_kotlinx-coe-jvm-1.7.3-cb5d5a55314c70b3.jar:?] at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:697) ~[org_jetbrains_kotlinx_kotlinx-coe-jvm-1.7.3-cb5d5a55314c70b3.jar:?] at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:684) ~[org_jetbrains_kotlinx_kotlinx-coe-jvm-1.7.3-cb5d5a55314c70b3.jar:?] Suppressed: kotlinx.coroutines.internal.DiagnosticCoroutineContextException Failed to load cookie file from cookie: Too many open files Failed to load cookie file from cookie: Too many open files shared memfd open() failed: Too many open files [04:10:08] [IO-Worker-19/INFO]: System default audio device has changed! socket(): Too many open files [ALSOFT] (EE) Error enumerating devices: Context did not connect (Access denied) [04:10:09] [Render thread/WARN]: Missing sound for event: minecraft:item.goat_horn.play [04:10:09] [Render thread/WARN]: Missing sound for event: minecraft:entity.goat.screaming.horn_break Failed to load cookie file from cookie: Too many open files [04:10:09] [Render thread/INFO]: OpenAL initialized on device Analog Stereo [04:10:09] [Render thread/INFO]: Sound engine started shared memfd open() failed: Too many open files socket(): Too many open files [ALSOFT] (EE) Error enumerating devices: Context did not connect (Access denied) [04:10:10] [IO-Worker-19/INFO]: System default audio device has changed! [04:10:11] [Render thread/WARN]: Missing sound for event: minecraft:item.goat_horn.play [04:10:11] [Render thread/WARN]: Missing sound for event: minecraft:entity.goat.screaming.horn_break [04:10:11] [Render thread/INFO]: OpenAL initialized on device Analog Stereo [04:10:11] [Render thread/INFO]: Sound engine started [04:10:17] [Render thread/INFO]: Connecting to play.hypixel.net, 25565 [04:10:19] [Server Connector #1/ERROR]: Couldn't connect to server java.lang.IllegalStateException: failed to create a child event loop at io.netty.util.concurrent.MultithreadEventExecutorGroup.<init>(MultithreadEventExecutorGroup.java:88) ~[netty-common-4.1.97.Final.jar:?] at io.netty.util.concurrent.MultithreadEventExecutorGroup.<init>(MultithreadEventExecutorGroup.java:60) ~[netty-common-4.1.97.Final.jar:?] at io.netty.util.concurrent.MultithreadEventExecutorGroup.<init>(MultithreadEventExecutorGroup.java:49) ~[netty-common-4.1.97.Final.jar:?] at io.netty.channel.MultithreadEventLoopGroup.<init>(MultithreadEventLoopGroup.java:59) ~[netty-transport-4.1.97.Final.jar:?] at io.netty.channel.epoll.EpollEventLoopGroup.<init>(EpollEventLoopGroup.java:117) ~[netty-transport-classes-epoll-4.1.97.Final.jar:?] at io.netty.channel.epoll.EpollEventLoopGroup.<init>(EpollEventLoopGroup.java:104) ~[netty-transport-classes-epoll-4.1.97.Final.jar:?] at io.netty.channel.epoll.EpollEventLoopGroup.<init>(EpollEventLoopGroup.java:81) ~[netty-transport-classes-epoll-4.1.97.Final.jar:?] at net.minecraft.class_2535.method_10765(class_2535.java:80) ~[client-intermediary.jar:?] at com.google.common.base.Suppliers$NonSerializableMemoizingSupplier.get(Suppliers.java:181) ~[guava-32.1.2-jre.jar:?] at net.minecraft.class_2535.method_52271(class_2535.java:459) ~[client-intermediary.jar:?] at net.minecraft.class_412$1.run(class_412.java:98) ~[client-intermediary.jar:?] Caused by: io.netty.channel.ChannelException: epoll_create1() failed: Too many open files at io.netty.channel.epoll.Native.epollCreate(Native Method) ~[netty-transport-classes-epoll-4.1.97.Final.jar:?] at io.netty.channel.epoll.Native.newEpollCreate(Native.java:155) ~[netty-transport-classes-epoll-4.1.97.Final.jar:?] at io.netty.channel.epoll.EpollEventLoop.openFileDescriptors(EpollEventLoop.java:120) ~[netty-transport-classes-epoll-4.1.97.Final.jar:?] at io.netty.channel.epoll.EpollEventLoop.<init>(EpollEventLoop.java:106) ~[netty-transport-classes-epoll-4.1.97.Final.jar:?] at io.netty.channel.epoll.EpollEventLoopGroup.newChild(EpollEventLoopGroup.java:190) ~[netty-transport-classes-epoll-4.1.97.Final.jar:?] at io.netty.channel.epoll.EpollEventLoopGroup.newChild(EpollEventLoopGroup.java:37) ~[netty-transport-classes-epoll-4.1.97.Final.jar:?] at io.netty.util.concurrent.MultithreadEventExecutorGroup.<init>(MultithreadEventExecutorGroup.java:84) ~[netty-common-4.1.97.Final.jar:?] ... 10 more

nea89o commented 8 months ago

This seems very rare. What are your ulimits? I did make it close the file descriptors a bit more quickly in https://github.com/nea89o/Firmament/commit/bc758d1. Does that work for you?

nea89o commented 8 months ago

Does this issue still persist with the latest commit on master? If not, please either increase your file handle limit, or re open this issue, along side an strace log.