Enigmatica6 icon indicating copy to clipboard operation
Enigmatica6 copied to clipboard

Repeatable out of memory condition

Open Old-Man-D opened this issue 2 years ago • 68 comments

Modpack Version

Expert 1.0.0

Describe your issue.

I am having this reoccurring out of memory condition that keeps closing out my session, forcing me to restart the client to resolve. It occurs after a few hours of playing, usually about 2-3 hours. I have tried allocating between 8 and 14 GB of ram, I have 32 total. nothing seems to change in regards to this crash.

Crash Report

No response

Latest Log

https://gist.github.com/Old-Man-D/0ed6e20f6f07ada509c4176a6983371e

Have you modified the modpack?

Yes

User Modifications

I have added optifine and the mod "Item Zoom". The Item zoom mod is a recent addition, it was crashing before it was added. I am willing to dump optifine, but the last time I loaded up without it, the emoji mod crashed me within minutes.

Did the issue happen in singleplayer or on a server?

Server

Old-Man-D avatar Mar 22 '22 09:03 Old-Man-D

Thanks for the report.

A crash report would be helpful here :)

NielsPilgaard avatar Mar 22 '22 17:03 NielsPilgaard

It's not producing a crash report. What it is doing is closing the connection to the server with the message that it was out of memory. This does not crash the client, it just brings you back to the main menu. But if you try and reconnect to the server, it errors out. I have had to restart the client to be able to reconnect to the server. The next time it happens, I will get screenshots of the specific messages. I am also going to disable optifine again and see if I can get more information that way too.

Old-Man-D avatar Mar 22 '22 18:03 Old-Man-D

Ah okay, thanks for clearing that up. Please try adding these Java Arguments and see if they help: https://wiki.enigmatica.net/main/help-desk/guides/performance-tweaks#jvm-arguments

You can add them in the Minecraft settings in the CurseForge App

NielsPilgaard avatar Mar 22 '22 19:03 NielsPilgaard

yeah, those are the jvm arguments I have.

Old-Man-D avatar Mar 22 '22 20:03 Old-Man-D

Does it work when you don't use shaders nor Optifine? Both of those, especially Optifine, are known to cause problems and crashes with this modpack

User-12691296 avatar Mar 22 '22 20:03 User-12691296

I am going to do more testing without optifine. However, it seems as though other people in the discord have similar problems without optifine. like there is a memory leak in a mod. My suspicion is Ars Nouveau based simply on other issue recorded here.

Old-Man-D avatar Mar 22 '22 21:03 Old-Man-D

I can confirm that the server myself and 3 friends are on have the same issue. kicks us out of the server after so long. I start at 7 gig for Enigmatica for memory, when it gets to 10 and a half, it kicks us.

johnnylingster avatar Mar 22 '22 21:03 johnnylingster

this is a screenshot of a log from our server if it'll help. Screenshot_20220322-183320

johnnylingster avatar Mar 22 '22 22:03 johnnylingster

Ok, I just had the crash again, this time without any optifine. Screenshot 2022-03-23 021718

What it did was cause the client to completely close, however it did not produce a crash report. (actually, maybe I hit "quit game", I can't quite remember).
latest.log

Old-Man-D avatar Mar 23 '22 09:03 Old-Man-D

Here is the server console:

Screenshot 2022-03-23 022755

Old-Man-D avatar Mar 23 '22 09:03 Old-Man-D

Our experience is similar. We would play for a little over an hour before the client would leave the world unexpectedly, show a Saving World message, and then either the screen Old-Man-D posted or this one: Out of memory error 3-22-2022

In either case, it was the client closing down the world as our server continued. When one of us errored the others kept playing.

johnnylingster and I both ran a brand new single player world for hours with no issue. His ran overnight and I actively played, so it suggests it might be something in our multiplayer world that didn't like the update. We came from modpack version 0.5.25.

DiceGolem avatar Mar 23 '22 12:03 DiceGolem

With me and my wife it is the same. Running on a dedicated server. No extra mods. It's occuring both on a old World from 0.5.25 to 1.0 and a new from 1.0.The server itself is stable. But the clients run out of memory and need a restart to work properly again. Different jvm arguements and different Java/Adoptium versions. Same effects. In the log ar different unspecific null-pointer errors without to see from where. "[main/ERROR]: java.lang.NullPointerException"

Schweigsam83 avatar Mar 23 '22 13:03 Schweigsam83

In case it is relevant, our server and my instances of E6E are both on 1.0.0 and were started on this version, they were not upgraded from earlier versions.

Old-Man-D avatar Mar 23 '22 16:03 Old-Man-D

Hmm.. Could you please try removing the mod Starlight and see if the issue persists?

NielsPilgaard avatar Mar 23 '22 18:03 NielsPilgaard

sure. is that a client side mod? or would I have to get the server owner to also remove it?

Old-Man-D avatar Mar 23 '22 18:03 Old-Man-D

loaded without starlight-mod still same error on my side. :( after about 2-2.5 hours in game

attached a shortened log Fehler.txt

edit: next crash after 2 hours next log-snippet with a more detailed out of memory error log2.txt

edit edit: last line in the snippet may be the re-enabling of the resourcepack

Schweigsam83 avatar Mar 23 '22 21:03 Schweigsam83

sure. is that a client side mod? or would I have to get the server owner to also remove it?

It needs to be removed on both server and client.

NielsPilgaard avatar Mar 24 '22 11:03 NielsPilgaard

Hi again. the 2 runs from my earlier posts are: first clientside only off and second run both sides without starlight so no or just a marginal impact on this error from this mod :(

Schweigsam83 avatar Mar 24 '22 11:03 Schweigsam83

I wonder if frequent loading of all advancements has anything to do with this, Loaded 9816 advancements is in the log a few times there.

NielsPilgaard avatar Mar 24 '22 17:03 NielsPilgaard

Hi again. topic advancements: this message comes up as a part of the FTB Utilities Backup on the server side. It has hiccups with my advancements only, but not with the ones of my wife. but she has this memory problem too. so i cant say if its connected with the memory error.

side note: the nullpointer errors seem to come up pretty independently of the backups, they can start from 1hour to 20 minutes before a crash occures.

edit: i had a look in the logs of my wife.. nothing suspicious in her log. no error no exception. just cache cleared, world id and uuid reseted and the discord mod closing down and end. edit edit: looked through some more logs at her computer. the last was just an excetpion. random nullpointer errors and the achievement synching in her logs. but only my achievements get noticed in the server-logs

Schweigsam83 avatar Mar 24 '22 21:03 Schweigsam83

Removing starlight didn’t change anything on my end. Also, this time when it kicked me out, I made sure to stay on the main menu and try and reload the server. It just says connecting, and never actually connects. I let it sit that way for like 10 minutes before giving up and restarting the client.

Old-Man-D avatar Mar 27 '22 23:03 Old-Man-D

Could you please update to 1.1.0 and try again?

NielsPilgaard avatar Mar 28 '22 08:03 NielsPilgaard

I checked our version, and we only go to 1.0. Is there somewhere we need to go to find 1.1?

johnnylingster avatar Mar 28 '22 11:03 johnnylingster

Just the usual place, CurseForge.

NielsPilgaard avatar Mar 28 '22 14:03 NielsPilgaard

You may need to set preferred release to alpha to see them in the curseforge alpha.

Darkere avatar Mar 28 '22 14:03 Darkere

I found it. the server is the one we need to use the FTP option to upgrade to 1.1 g-portal is our server provider and they have to do the update themselves apparently?

johnnylingster avatar Mar 28 '22 14:03 johnnylingster

I will have to wait for my server to also update, as I am not the admin of said server. But I will pass this along to them.

Old-Man-D avatar Mar 28 '22 16:03 Old-Man-D

Hi again. Had a chance to update in the morning. But no improvement. I have to have a look in the logs after work. But there was definitely again this error.

Schweigsam83 avatar Mar 28 '22 18:03 Schweigsam83

I've ran into a memory leak in Singleplayer E6E as well. My recommendation is, if it is indeed a memory leak to go back to the main menu and then make a heapdump via external tools, I've used the CLI tools jmap to do so: (All commandline, make sure these tools are in your path, should be found in the same folder as your java binary) First run jps to find the Process ID of Minecraft Then jmap -dump:format=b,file=heapdump.bin <PID goes here> Note that these will be several gigabytes (your heap size plus some), so don't bother with this unless you can analyze them yourself(I recommend Eclipse MAT) or upload them somewhere. I'm happy to analyze heapdumps you upload.

Cyprex avatar Mar 29 '22 12:03 Cyprex

Hi again. tried the Heapdump-thingy. No helpful infos on first glance. (and not versed enough for deeper inspection). Uploading is not an option, 5gigs(minimum) upload would take away my internet for a full day. The Error is qiet consistently in time without change if the memory is 5, 7 or 10 gigs allocated. Java or Adoptium versions dont matter, tried different.

Updated to 1.1.1 the error still persists.

The error in the normal log:

A few Nullpointer Errors of Chisel, but Chisel is not the suspect. Made a run without it and it occured nonetheless. A few Tetra-Tools are logged to be inspected. Looks unsuspicious but i dont know. and finally

[31Mar2022 14:02:06.649] [main/FATAL] [net.minecraft.client.Minecraft/]: Out of memory io.netty.util.internal.OutOfDirectMemoryError: failed to allocate 3020 byte(s) of direct memory (used: 10737417708, max: 10737418240) at io.netty.util.internal.PlatformDependent.incrementMemoryCounter(PlatformDependent.java:640) ~[netty-all-4.1.25.Final.jar:4.1.25.Final] at io.netty.util.internal.PlatformDependent.allocateDirectNoCleaner(PlatformDependent.java:594) ~[netty-all-4.1.25.Final.jar:4.1.25.Final] at io.netty.buffer.UnpooledUnsafeNoCleanerDirectByteBuf.allocateDirect(UnpooledUnsafeNoCleanerDirectByteBuf.java:30) ~[netty-all-4.1.25.Final.jar:4.1.25.Final] at io.netty.buffer.UnpooledByteBufAllocator$InstrumentedUnpooledUnsafeNoCleanerDirectByteBuf.allocateDirect(UnpooledByteBufAllocator.java:186) ~[netty-all-4.1.25.Final.jar:4.1.25.Final] at io.netty.buffer.UnpooledUnsafeDirectByteBuf.<init>(UnpooledUnsafeDirectByteBuf.java:68) ~[netty-all-4.1.25.Final.jar:4.1.25.Final] at io.netty.buffer.UnpooledUnsafeNoCleanerDirectByteBuf.<init>(UnpooledUnsafeNoCleanerDirectByteBuf.java:25) ~[netty-all-4.1.25.Final.jar:4.1.25.Final] at io.netty.buffer.UnpooledByteBufAllocator$InstrumentedUnpooledUnsafeNoCleanerDirectByteBuf.<init>(UnpooledByteBufAllocator.java:181) ~[netty-all-4.1.25.Final.jar:4.1.25.Final] at io.netty.buffer.UnpooledByteBufAllocator.newDirectBuffer(UnpooledByteBufAllocator.java:91) ~[netty-all-4.1.25.Final.jar:4.1.25.Final] at io.netty.buffer.AbstractByteBufAllocator.directBuffer(AbstractByteBufAllocator.java:185) ~[netty-all-4.1.25.Final.jar:4.1.25.Final] at io.netty.buffer.UnsafeByteBufUtil.copy(UnsafeByteBufUtil.java:436) ~[netty-all-4.1.25.Final.jar:4.1.25.Final] at io.netty.buffer.UnpooledUnsafeDirectByteBuf.copy(UnpooledUnsafeDirectByteBuf.java:463) ~[netty-all-4.1.25.Final.jar:4.1.25.Final] at io.netty.buffer.AbstractByteBuf.copy(AbstractByteBuf.java:1170) ~[netty-all-4.1.25.Final.jar:4.1.25.Final] at net.minecraft.network.PacketBuffer.copy(PacketBuffer.java:1009) ~[?:?] at net.minecraft.network.play.server.SCustomPayloadPlayPacket.func_180735_b(SCustomPayloadPlayPacket.java:69) ~[?:?] at net.minecraft.client.network.play.ClientPlayNetHandler.func_147240_a(ClientPlayNetHandler.java:1692) ~[?:?] at net.minecraft.network.play.server.SCustomPayloadPlayPacket.func_148833_a(SCustomPayloadPlayPacket.java:59) ~[?:?] at net.minecraft.network.play.server.SCustomPayloadPlayPacket.func_148833_a(SCustomPayloadPlayPacket.java:11) ~[?:?] at net.minecraft.network.PacketThreadUtil.func_225383_a(SourceFile:21) ~[?:?] at net.minecraft.network.PacketThreadUtil$$Lambda$38572/1895663636.run(Unknown Source) ~[?:?] at net.minecraft.util.concurrent.ThreadTaskExecutor.func_213166_h(SourceFile:144) ~[?:?] at net.minecraft.util.concurrent.RecursiveEventLoop.func_213166_h(SourceFile:23) ~[?:?] at net.minecraft.util.concurrent.ThreadTaskExecutor.func_213168_p(SourceFile:118) ~[?:?] at net.minecraft.util.concurrent.ThreadTaskExecutor.func_213160_bf(SourceFile:103) ~[?:?] at net.minecraft.client.Minecraft.func_195542_b(Minecraft.java:948) ~[?:?] at net.minecraft.client.Minecraft.func_99999_d(Minecraft.java:607) [?:?] at net.minecraft.client.main.Main.main(Main.java:184) [?:?] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_51] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:1.8.0_51] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_51] at java.lang.reflect.Method.invoke(Method.java:497) ~[?:1.8.0_51] at net.minecraftforge.fml.loading.FMLClientLaunchProvider.lambda$launchService$0(FMLClientLaunchProvider.java:51) [forge-1.16.5-36.2.29.jar:36.2] at net.minecraftforge.fml.loading.FMLClientLaunchProvider$$Lambda$506/1429306467.call(Unknown Source) [forge-1.16.5-36.2.29.jar:36.2] at cpw.mods.modlauncher.LaunchServiceHandlerDecorator.launch(LaunchServiceHandlerDecorator.java:37) [modlauncher-8.1.3.jar:?] at cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:54) [modlauncher-8.1.3.jar:?] at cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:72) [modlauncher-8.1.3.jar:?] at cpw.mods.modlauncher.Launcher.run(Launcher.java:82) [modlauncher-8.1.3.jar:?] at cpw.mods.modlauncher.Launcher.main(Launcher.java:66) [modlauncher-8.1.3.jar:?]

in the debug log (curseforge option) shortly after overflow: [31Mar2022 14:01:53.872] [main/DEBUG] [net.minecraftforge.registries.ObjectHolderRef/]: Unable to lookup atum:jeweled_fish for public static net.minecraft.item.Item com.teammetallurgy.atum.init.AtumItems.JEWELED_FISH. This means the object wasn't registered. It's likely just mod options. of a few dozen Items

i hope it's helpful. sincerly

Schweigsam83 avatar Mar 31 '22 12:03 Schweigsam83