Sound Physics Remastered

Sound Physics Remastered

15M Downloads

[crash] crash while being teleported far away

rand0m0User opened this issue ยท 1 comments

commented

Bug description
the game hangs due to running out of memory when tp'ing or getting tp'd to the world boarder (or just really far)

my best guess is its something to do with sounds playing in unloaded or not yet loaded chunks, causing "fixedRaycast" run until "Long2ObjectOpenHashMap" runs out of heap memory because it doesnt find any blocks

Steps to reproduce the issue

  1. join a server (latest paper, really dont know if that matters, was unable to reproduce the issue in singleplayer)
  2. teleport (or be TP'd) to tp 29000000 200 29000000 (also tp'ing entities more reliably causes the fault)

Expected behavior
should just work normally and not crash

Log files
short, no other errors in 'latest.log', just the one
[12:28:47] [Sound engine/ERROR]: Uncaught exception in thread "Sound engine" java.lang.OutOfMemoryError: Java heap space at it.unimi.dsi.fastutil.longs.Long2ObjectOpenHashMap.rehash(Long2ObjectOpenHashMap.java:1293) ~[fastutil-8.5.9.jar:?] at it.unimi.dsi.fastutil.longs.Long2ObjectOpenHashMap.insert(Long2ObjectOpenHashMap.java:249) ~[fastutil-8.5.9.jar:?] at it.unimi.dsi.fastutil.longs.Long2ObjectOpenHashMap.put(Long2ObjectOpenHashMap.java:257) ~[fastutil-8.5.9.jar:?] at it.unimi.dsi.fastutil.longs.Long2ObjectFunction.put(Long2ObjectFunction.java:124) ~[fastutil-8.5.9.jar:?] at it.unimi.dsi.fastutil.longs.Long2ObjectMap.put(Long2ObjectMap.java:170) ~[fastutil-8.5.9.jar:?] at it.unimi.dsi.fastutil.longs.Long2ObjectMap.put(Long2ObjectMap.java:41) ~[fastutil-8.5.9.jar:?] at java.util.Map.computeIfAbsent(Map.java:1055) ~[?:?] at com.sonicether.soundphysics.RaycastFix.lambda$fixedRaycast$2(RaycastFix.java:48) ~[soundphysics-fabric-1.20.1-1.1.2.jar:?] at com.sonicether.soundphysics.RaycastFix$$Lambda$6423/0x0000000800f8ed50.apply(Unknown Source) ~[?:?] at com.sonicether.soundphysics.RaycastFix.traverseBlocks(RaycastFix.java:113) ~[soundphysics-fabric-1.20.1-1.1.2.jar:?] at com.sonicether.soundphysics.RaycastFix.fixedRaycast(RaycastFix.java:40) ~[soundphysics-fabric-1.20.1-1.1.2.jar:?] at com.sonicether.soundphysics.SoundPhysics.runOcclusion(SoundPhysics.java:465) ~[soundphysics-fabric-1.20.1-1.1.2.jar:?] at com.sonicether.soundphysics.SoundPhysics.calculateOcclusion(SoundPhysics.java:445) ~[soundphysics-fabric-1.20.1-1.1.2.jar:?] at com.sonicether.soundphysics.SoundPhysics.evaluateEnvironment(SoundPhysics.java:243) ~[soundphysics-fabric-1.20.1-1.1.2.jar:?] at com.sonicether.soundphysics.SoundPhysics.processSound(SoundPhysics.java:187) ~[soundphysics-fabric-1.20.1-1.1.2.jar:?] at com.sonicether.soundphysics.SoundPhysics.onPlaySound(SoundPhysics.java:154) ~[soundphysics-fabric-1.20.1-1.1.2.jar:?] at net.minecraft.class_4224.handler$zpm000$sound_physics_remastered$play(class_4224.java:1032) ~[client-intermediary.jar:?] at net.minecraft.class_4224.method_19650(class_4224.java) ~[client-intermediary.jar:?] at net.minecraft.class_1140.method_19752(class_1140.java:461) ~[client-intermediary.jar:?] at net.minecraft.class_1140$$Lambda$5525/0x0000000800d8b700.accept(Unknown Source) ~[?:?] at net.minecraft.class_4235$class_4236.method_19737(class_4235.java:34) ~[client-intermediary.jar:?] at net.minecraft.class_4235$class_4236$$Lambda$5484/0x0000000800d71af0.run(Unknown Source) ~[?:?] at net.minecraft.class_1255.method_18859(class_1255.java:156) ~[client-intermediary.jar:?] at net.minecraft.class_1255.method_16075(class_1255.java:130) ~[client-intermediary.jar:?] at net.minecraft.class_1255.method_18857(class_1255.java:139) ~[client-intermediary.jar:?] at net.minecraft.class_4238.method_19765(class_4238.java:42) ~[client-intermediary.jar:?] at net.minecraft.class_4238$$Lambda$4341/0x0000000800b9d6e0.run(Unknown Source) ~[?:?] at java.lang.Thread.run(Thread.java:833) ~[?:?]

Versions
Minecraft version: 1.20.1
Forge/Fabric loader version: latest version as far as i can tell
Sound Physics Remastered version: fabric-1.20.1-1.1.2

Other mods
i dont see any other code paths in the error but i will list them anyway

baritone-standalone-fabric-1.10.1.jar
fabric-api-0.83.1+1.20.1.jar
litematica-fabric-1.20.1-0.15.0.jar
malilib-fabric-1.20.1-0.16.0.jar
memoryleakfix-fabric-1.17+-1.1.2.jar
minihud-fabric-1.20.1-0.27.0.jar
sodium-fabric-mc1.20.1-0.5.2.jar
soundphysics-fabric-1.20.1-1.1.2.jar
Xaeros_Minimap_23.5.0_Fabric_1.20.jar
also a modified version of wurst, but i was able to reproduce the bug without it

Screenshots (Optional)
Screenshots of the issue.

commented

Duplicate of #132