Crash in 1.18.2 when opening inventory with rei installed
jklw10 opened this issue ยท 17 comments
happens very rarely and only when done fast enough, uncertain if the main cause is rei though
latest.log
.
This log is unusual and does not provide enough information. Please provide a full log with the mod list, resource reload information, and other typical log lines.
I have resolved the issue in a local build and will be making a PR momentarily.
How can this issue be reproduced? When I tried to do so, I was not able to cause a crash.
I'm not sure of the minimal reproduction case, unfortunately.
A good start for investigation might be Sodium + Indium + REI + Continuity? If you can't reproduce the issue with just those four mods, I'm a bit stumped as my testing environment is a giant WIP modpack with 250+ mods.
Some questions:
- Is
@Override public void reload(ResourceManager manager)
supposed to be called on world join?blockAtlasSpriteFinder
being initialised without a value prior would make more sense if that was the case. - Did I even need to make it
ThreadLocal
? I did it to matchMATERIAL_FINDER
but maybe I didn't have to.
and only when done fast enough
Gives me the impression that reproduction may generally be hard, as it may depend on both your reflexes on opening up the inventory when you first enter the world, as well as other potentially uncontrollable factors that may delay you opening the inventory until after the point where blockAtlasSpriteFinder
is no longer null.
I do not feel comfortable accepting any sort of solution until I can reproduce this because I do not see any mistakes in the existing code. If REI is rendering things too early, that is not something Continuity should support without a good reason.
My testing setup included those four mods. I can test with a modpack, but it must be available on CurseForge because I do not want to install 250 mods separately.
I do not want to install 250 mods separately
Would a zip export from GDLauncher (or just a direct zip of my modpack install) do? GDLauncher is what I use to develop my packs. It'll install the mods for you, etc.
I think I know how it's possible for me - the amount of mods I have introduces enough overhead to delay things long enough for me to open up REI before the resources reload is complete. I think that's why minimal reproduction cases with smaller amounts of mods are difficult to find.
It is not possible for a world to be joined or even the title screen to be shown before the resource reload is finished. The progress bar screen is also shown during the entire duration of the resource reload, so nothing else can happen during it. The amount of mods cannot affect this.
Ah, okay. In that case, I am not sure what's going on, because all I had to do was initialise blockAtlasSpriteFinder
with a value and it worked. Very strange.
Would you like my pack export, or the entire thing zipped up?
A pack export shall do. While I do not have GD Launcher installed I assume I can put the export into Ferium which will download all the necessary mods for me.
This will contain my custom build of Continuity so just make sure to replace that with the latest official one!
I am having a potentially similar issue - Either the issue is with REI or Indium, however the stack overflow referenced further down in the crash log apparently could be related to REI and item rendering.
Either way, the infinite loop mentioned in the crash log causes the game to freeze any server-side loading and then just give up entirely.
If the stack overflow isn't directly related but you happen to know what it could be, please let me know! I've been desperately trying to figure out what has been causing it, as it is intermittent and messing with my pack dev a lot.
Yeah it seems to be the way this mod and REI interact: shedaniel/RoughlyEnoughItems#943
https://crashy.net/vV3m3zVfGrs6pr9m8784 this happened to me during sand mining, no idea if it requires separate issue or not.
https://bytebin.lucko.me/jVZlunFiLR
Closing as a duplicate of #120. Please discuss further developments and findings of this bug there.