Immersive Engineering

Immersive Engineering

143M Downloads

Weird JVM crash when IE manual UI is open

unikmhz opened this issue · 12 comments

commented

Description of the issue:

This comment formatted as a separate issue, as per request.
Got a hard JVM crash when engineer's manual UI is opened. Usually the manual opens and functions normally for about a minute or two before crashing.

Exact actions to reproduce:

  • Open engineer's manual book.
  • Navigate to "UPDATE NEWS!" → "0.12-78 - CURRENT" page.
  • Wait.

Further testing shows that it is dependent on JVM arguments. In particular, running with CMS GC seems to trigger the bug, but G1GC does not.

Crashlog

JVM error report: hs_err_pid241903.log
Compiler replay data: replay_pid241903.log
STDOUT log with PrintCompilation: stdout.log

Versions & Modlist

MultiMC jar launcher, 0.6.1.
Oracle JDK 1.8.0.162, Linux x86-64.
MC 1.12.2, single-player.
Forge 2611.
IE 0.12-78.
Tried with/without FoamFix.
Might be important: there are several IE addons present in the mod list.

commented

Is this by chance some existing/public modpack (on curse or somewhere like that)? Or at least based on one? Config changes are irrelevant for this.

commented

No, sorry. This is my local kitchen sink.
It was originally based on FTB Unstable 1.12, but since then I changed it a lot, and migrated from FTB launcher to MultiMC.

commented

Could you send me the mod folder (either here or directly to [email protected])? I haven't been able to replicate the crash, but I think I can use the replay file to force the JVM to crash. I'm having difficulties cutting it down to just the needed parts (I think I removed too much, it took about an hour to cut it down so I'm not doing that again). I hope that with all required mods in the classpath I can just use the file (mostly) as it is.

commented

https://drive.google.com/open?id=1YTalFTpDPxo-R3q4sumaHVisxGOK63rO
I think you can import this archive directly via MultiMC.

commented

Well that was a waste of everyones time. I have no idea what is causing this and when I finally got the replay working it didn't crash. If anyone has useful ideas on how to fix this I'd be glad to hear them.

commented

Smells like a JVM bug. Some shared library causes a seg fault when a specific concurrent garbage collector is used. Not sure what we can do besides forwarding this one to Oracle (instructions in the first 15 lines of hs_err_pid241903.log).

To reproduce, one would likely need to replicate @unikmhz`s execution environment (same collection of .so files, same linux kernel, same java runtime flags, and possibly same processor). Also since this bug has to do with a concurrent subsystem, repro rates will differ from computer to computer.

I would use G1GC and not worry about this bug.

commented

I'm not an expert on JVM crashes, but the crashing thread is the C2 JIT compiler. I'm not sure whether the garbage collector could cause this. Also the replay file is (from what I understand) supposed to be a way to replicate such crashes. I've been able to make it replay, but it didn't crash.

commented

same thing happens to me... playing Foregoing modpack for 1.12.2...

commented

What version of Java?

commented

I think curse launcher uses jre-x64-1.8.0_25... that's what it installed by default... under {curse folder} \ Install \ runtime

commented

ok... making minecraft launcher use java 1.8.0_162 seems to have fixed the problem!

so... looks like a JVM issue... thanks!

commented

We've not had reports of this in forever