IMB11 / SnowUnderTrees

A Minecraft mod that adds snow under trees in snowy biomes.
https://modrinth.com/mod/snow-under-trees-remastered
Other
7 stars 4 forks source link

LegacyRandomSource Access #10

Closed Fyoncle closed 4 months ago

Fyoncle commented 6 months ago

I been getting rare and unknown crashes for a long while and the log wasnt giving enough info, but today one of my friends also got the crash and it says "Snow Under Trees" in the place LegacyRandomSource Stated at, maybe its related to your mod by any chance?

https://mclo.gs/tuxHrwq

IMB11 commented 6 months ago

Do you have any mods that multi thread/optimize world generation? I dont see why this is occuring

Fyoncle commented 6 months ago

Do you have any mods that multi thread/optimize world generation? I dont see why this is occuring

I am the owner of Elysium Days modpack, and its related to my modpack, you see the mod list yourself; https://modrinth.com/modpack/elysium-days/version/3.1.0

IMB11 commented 6 months ago

Is this occuring on Singleplayer or a Multiplayer server?

Fyoncle commented 6 months ago

Is this occuring on Singleplayer or a Multiplayer server?

It mostly happened when i use E4MC to play with my friends, but a server owner also said it happened in a server.

Never experienced in singleplayer, but cant guarantee it doesnt happen in singleplayer.

IMB11 commented 6 months ago

So this is a server issue, will investigate later today.

Fyoncle commented 6 months ago

So this is a server issue, will investigate later today.

Thank you ❤️

IMB11 commented 6 months ago

I've determined that Snow Under Trees isn't the one causing the issue here. You should perform a binary search of your mods folder to find out which mod is accessing LRA from a thread that isn't on the Server thread.

Snow Under Trees is correctly accessing LRA from the server thread, another mod isn't, which is causing SUT to error as it's being used by another mod on the wrong thread.

Please let me know when you find which mod it is. Consider increasing the tick speed using Carpet or the new /tick command to speed up the world, increasing the chance this happens.

IMB11 commented 6 months ago

If you're struggling to binary search, ask in the Fabric discord.

Fyoncle commented 6 months ago

I've determined that Snow Under Trees isn't the one causing the issue here. You should perform a binary search of your mods folder to find out which mod is accessing LRA from a thread that isn't on the Server thread.

Snow Under Trees is correctly accessing LRA from the server thread, another mod isn't, which is causing SUT to error as it's being used by another mod on the wrong thread.

Please let me know when you find which mod it is. Consider increasing the tick speed using Carpet or the new /tick command to speed up the world, increasing the chance this happens.

Thank you for your detailed information and fast answer sir, ill be investigating that with many tests soon, can you give more detail about binary search? How do we do that?

IMB11 commented 6 months ago

A binary search can be used to quickly find a specific mod causing trouble, which can be especially useful when logs don't give a conclusive answer to your issue.

Start by removing or disabling half of your mods, then test if the problem still occurs. If it does, remove half of the remaining mods and test again. If it doesn't, add back half of the mods you just removed.

Keep in mind you don't have to stick strictly to halves each time, and may have to enable some library mods like Fabric API out of order.

By repeating this on an increasingly smaller set of mods, you'll find the problematic mod within a few iterations.

Fyoncle commented 6 months ago

A binary search can be used to quickly find a specific mod causing trouble, which can be especially useful when logs don't give a conclusive answer to your issue.

Start by removing or disabling half of your mods, then test if the problem still occurs. If it does, remove half of the remaining mods and test again. If it doesn't, add back half of the mods you just removed.

Keep in mind you don't have to stick strictly to halves each time, and may have to enable some library mods like Fabric API out of order.

By repeating this on an increasingly smaller set of mods, you'll find the problematic mod within a few iterations.

So thats what i call suffer split method, but still, that crash is rare as hell and only happens like once in 10 hours of gameplay, so suffer split wont help here.

IMB11 commented 6 months ago

You can expedite the time it takes for the crash to occur by increasing the tick speed using Carpet or the vanilla /tick command.

Fyoncle commented 6 months ago

You can expedite the time it takes for the crash to occur by increasing the tick speed using Carpet or the vanilla /tick command.

Tick command doesnt seem to be available for me, let me see Carpet real quick.

Fyoncle commented 6 months ago

You can expedite the time it takes for the crash to occur by increasing the tick speed using Carpet or the vanilla /tick command.

What do i tick sir? image

IMB11 commented 6 months ago

rate

IMB11 commented 6 months ago

Actually, can you install this on your server and give me the log whenever it happens again?

https://www.curseforge.com/minecraft/mc-mods/uwrad

Fyoncle commented 6 months ago

Actually, can you install this on your server and give me the log whenever it happens again?

https://www.curseforge.com/minecraft/mc-mods/uwrad

I did add it into latest release of my modpack already, also tickrate thingy doesnt work, its just doesnt wanna crash.

IMB11 commented 6 months ago

In that case, can you send logs when the crash occurs again (with the mod installed?) on the server?

Fyoncle commented 6 months ago

In that case, can you send logs when the crash occurs again (with the mod installed?) on the server?

Yeah sir, i can do that.

Fyoncle commented 4 months ago

Well no, no crashes for a long while since Elysium Days Version 3.0.5 so i think it was either a update of a mod fixed that, or it was just More Mob Variants, because they access it wrongly. https://github.com/nyuppo/MobVariants/issues/33 as shown in here and https://github.com/nyuppo/MobVariants/issues/36 here, and got a unmerged pull request that can fix that which is https://github.com/nyuppo/MobVariants/pull/40