Quark Zeta Fixin

Quick rating

Community listing page, reviews may not be monitored by the author.

Quark Zeta Fixin

No reviews yet

Fixes a race condition in Zeta, the library for Quark, that occurs when too many addons are installed

Mod Loaders
Minecraft

About

Description

This mod fixes concurrency issues with Zeta (the library for Quark)'s event system, where having any number of addons that try use it (although more commonly with lots of addons) will cause the game to crash sometimes.

Error messages that this fix look like this:

	Exception message: java.lang.ArrayIndexOutOfBoundsException: Index 512 out of bounds for length 257
Stacktrace:
	at it.unimi.dsi.fastutil.objects.Object2ObjectOpenHashMap.rehash(Object2ObjectOpenHashMap.java:1275)
	at it.unimi.dsi.fastutil.objects.Object2ObjectOpenHashMap.insert(Object2ObjectOpenHashMap.java:245)
	at it.unimi.dsi.fastutil.objects.Object2ObjectOpenHashMap.put(Object2ObjectOpenHashMap.java:253)
	at org.violetmoon.zetaimplforge.event.ForgeZetaEventBus.subscribeMethod(ForgeZetaEventBus.java:87)

The important parts here are the Exception message: java.lang.ArrayIndexOutOfBoundsException: AND the org.violetmoon.zetaimplforge.event.ForgeZetaEventBus.subscribeMethod. If both of these do not appear in your error message then this will not solve your issue.

It fixes this by replacing the non thread safe map with a thread safe version, and does so in a way that means the game will not crash no matter what changes Zeta makes (even if they fix this issue). You should still remove this mod when Zeta fixes the issue though.

And yes, this mod is so small that the same jar works across 1.20.1 Forge and 1.21.1 NeoForge.