Rare crash with generic peripherals
cyb0124 opened this issue ยท 2 comments
Minecraft Version
1.20.x
Version
1.109.6
Details
I've been using generic peripherals intensively for item and fluid inspection & transfer. Today I'm getting this one-off crash that I have no idea what in particular caused it. The peripheral is likely a machine from https://github.com/GregTechCEu/GregTech-Modern.
Description: Exception ticking world
java.lang.IllegalStateException: net.minecraft.world.level.block.entity.BlockEntityType@52a5d345 was not registered in minecraft:block_entity_type
at dan200.computercraft.shared.platform.PlatformHelperImpl$RegistryWrapperImpl.getKey(PlatformHelperImpl.java:359) ~[cc-tweaked-1.20.1-forge-1.109.6.jar%23324!/:1.109.6] {re:classloading}
at dan200.computercraft.shared.peripheral.generic.GenericPeripheral.<init>(GenericPeripheral.java:32) ~[cc-tweaked-1.20.1-forge-1.109.6.jar%23324!/:1.109.6] {re:classloading}
at dan200.computercraft.shared.peripheral.generic.GenericPeripheralBuilder.toPeripheral(GenericPeripheralBuilder.java:37) ~[cc-tweaked-1.20.1-forge-1.109.6.jar%23324!/:1.109.6] {re:classloading}
at dan200.computercraft.shared.peripheral.generic.GenericPeripheralProvider.getPeripheral(GenericPeripheralProvider.java:61) ~[cc-tweaked-1.20.1-forge-1.109.6.jar%23324!/:1.109.6] {re:classloading}
at dan200.computercraft.impl.Peripherals.getPeripheral(Peripherals.java:94) ~[cc-tweaked-1.20.1-forge-1.109.6.jar%23324!/:1.109.6] {re:classloading}
at dan200.computercraft.shared.platform.PlatformHelperImpl$PeripheralAccess.get(PlatformHelperImpl.java:452) ~[cc-tweaked-1.20.1-forge-1.109.6.jar%23324!/:1.109.6] {re:classloading}
at dan200.computercraft.shared.platform.PlatformHelperImpl$PeripheralAccess.get(PlatformHelperImpl.java:444) ~[cc-tweaked-1.20.1-forge-1.109.6.jar%23324!/:1.109.6] {re:classloading}
at dan200.computercraft.shared.platform.PlatformHelperImpl$ComponentAccessImpl.get(PlatformHelperImpl.java:435) ~[cc-tweaked-1.20.1-forge-1.109.6.jar%23324!/:1.109.6] {re:classloading}
at dan200.computercraft.shared.peripheral.modem.wired.WiredModemLocalPeripheral.getPeripheralFrom(WiredModemLocalPeripheral.java:127) ~[cc-tweaked-1.20.1-forge-1.109.6.jar%23324!/:1.109.6] {re:classloading}
at dan200.computercraft.shared.peripheral.modem.wired.WiredModemLocalPeripheral.attach(WiredModemLocalPeripheral.java:53) ~[cc-tweaked-1.20.1-forge-1.109.6.jar%23324!/:1.109.6] {re:classloading}
at dan200.computercraft.shared.peripheral.modem.wired.CableBlockEntity.refreshPeripheral(CableBlockEntity.java:170) ~[cc-tweaked-1.20.1-forge-1.109.6.jar%23324!/:1.109.6] {re:classloading}
at dan200.computercraft.shared.peripheral.modem.wired.CableBlockEntity.blockTick(CableBlockEntity.java:227) ~[cc-tweaked-1.20.1-forge-1.109.6.jar%23324!/:1.109.6] {re:classloading}
at dan200.computercraft.shared.peripheral.modem.wired.CableBlock.m_213897_(CableBlock.java:250) ~[cc-tweaked-1.20.1-forge-1.109.6.jar%23324!/:1.109.6] {re:classloading}
Also this non-crashing error has been spamming in server console regularly. Since it's printed on the console, is it something to be concerned?
dan200.computercraft.api.peripheral.NotAttachedException: You are not attached to this computer
at dan200.computercraft.shared.peripheral.modem.wired.WiredModemPeripheral$RemotePeripheralWrapper.getAvailablePeripheral(WiredModemPeripheral.java:438) ~[cc-tweaked-1.20.1-forge-1.109.6.jar%23325!/:1.109.6]
at dan200.computercraft.shared.peripheral.generic.methods.InventoryMethods.pullItems(InventoryMethods.java:95) ~[cc-tweaked-1.20.1-forge-1.109.6.jar%23325!/:1.109.6]
at dan200.computercraft.core.asm.PeripheralMethodSupplier.lambda$static$0(PeripheralMethodSupplier.java:28) ~[cc-tweaked-1.20.1-forge-1.109.6.jar%23325!/:1.109.6]
at dan200.computercraft.core.asm.PeripheralMethodSupplier.lambda$static$2(PeripheralMethodSupplier.java:35) ~[cc-tweaked-1.20.1-forge-1.109.6.jar%23325!/:1.109.6]
at dan200.computercraft.api.lua.TaskCallback.execute(TaskCallback.java:30) ~[cc-tweaked-1.20.1-forge-1.109.6.jar%23325!/:1.109.6]
at dan200.computercraft.core.computer.LuaContext.lambda$issueMainThreadTask$0(LuaContext.java:29) ~[cc-tweaked-1.20.1-forge-1.109.6.jar%23325!/:1.109.6]
at dan200.computercraft.core.computer.mainthread.MainThreadExecutor.execute(MainThreadExecutor.java:138) ~[cc-tweaked-1.20.1-forge-1.109.6.jar%23325!/:1.109.6]
at dan200.computercraft.core.computer.mainthread.MainThread.tick(MainThread.java:139) ~[cc-tweaked-1.20.1-forge-1.109.6.jar%23325!/:1.109.6]
at dan200.computercraft.shared.computer.core.ServerContext.tick(ServerContext.java:156) ~[cc-tweaked-1.20.1-forge-1.109.6.jar%23325!/:1.109.6]
at dan200.computercraft.shared.CommonHooks.onServerTickStart(CommonHooks.java:48) ~[cc-tweaked-1.20.1-forge-1.109.6.jar%23325!/:1.109.6]
at dan200.computercraft.shared.ForgeCommonHooks.onServerTick(ForgeCommonHooks.java:50) ~[cc-tweaked-1.20.1-forge-1.109.6.jar%23325!/:1.109.6]
at dan200.computercraft.shared.__ForgeCommonHooks_onServerTick_ServerTickEvent.invoke(.dynamic) ~[cc-tweaked-1.20.1-forge-1.109.6.jar%23325!/:1.109.6]
at net.minecraftforge.eventbus.ASMEventHandler.invoke(ASMEventHandler.java:73) ~[eventbus-6.0.5.jar%2352!/:?]
at net.minecraftforge.eventbus.EventBus.post(EventBus.java:315) ~[eventbus-6.0.5.jar%2352!/:?]
at net.minecraftforge.eventbus.EventBus.post(EventBus.java:296) ~[eventbus-6.0.5.jar%2352!/:?]
at net.minecraftforge.event.ForgeEventFactory.onPreServerTick(ForgeEventFactory.java:945) ~[forge-1.20.1-47.2.20-universal.jar%23502!/:?]
at net.minecraft.server.MinecraftServer.m_5705_(MinecraftServer.java:812) ~[server-1.20.1-20230612.114412-srg.jar%23497!/:?]
at net.minecraft.server.MinecraftServer.m_130011_(MinecraftServer.java:661) ~[server-1.20.1-20230612.114412-srg.jar%23497!/:?]
at net.minecraft.server.MinecraftServer.m_206580_(MinecraftServer.java:251) ~[server-1.20.1-20230612.114412-srg.jar%23497!/:?]
at java.lang.Thread.run(Thread.java:1623) ~[?:?]
Thanks for the report! Oh, this is very odd - I'm struggling to think of a time where a block entity wouldn't be registered, at least without causing bigger issues in Minecraft itself. I've added some more logging, to at least help track this down.