Immersive Vehicles (Formerly Transport Simulator)

Immersive Vehicles (Formerly Transport Simulator)

4M Downloads

ServerHangWatchdog crash on 1.12.2 due to MTS/IV collision check

mica-alex opened this issue ยท 3 comments

commented

General Issue: A player was on my server today and reported that they were kicked after timing out, and then I observed that the server subsequently rebooted. Now, the server is inaccessible, and the issue happens again any time someone tries to join. Their client times out, and eventually the ServerHangWatchdog brings the server down.

Stack Trace:

java.lang.Error: ServerHangWatchdog detected that a single server tick took 1200.00 seconds (should be max 0.05)
    at mcinterface1122.WrapperWorld.checkForCollisions(WrapperWorld.java:578)
    at minecrafttransportsimulator.baseclasses.VehicleGroundDeviceBox.updateCollisionStatuses(VehicleGroundDeviceBox.java:253)
    at minecrafttransportsimulator.baseclasses.VehicleGroundDeviceCollection.updateCollisions(VehicleGroundDeviceCollection.java:63)
    at minecrafttransportsimulator.entities.instances.AEntityVehicleD_Moving.moveVehicle(AEntityVehicleD_Moving.java:530)
    at minecrafttransportsimulator.entities.instances.AEntityVehicleD_Moving.update(AEntityVehicleD_Moving.java:185)
    at minecrafttransportsimulator.entities.instances.AEntityVehicleE_Powered.update(AEntityVehicleE_Powered.java:87)
    at minecrafttransportsimulator.entities.instances.EntityVehicleF_Physics.update(EntityVehicleF_Physics.java:162)
    at minecrafttransportsimulator.baseclasses.EntityManager.tickAll(EntityManager.java:138)
    at mcinterface1122.WrapperWorld.on(WrapperWorld.java:928)
    at net.minecraftforge.fml.common.eventhandler.ASMEventHandler_1027_WrapperWorld_on_WorldTickEvent.invoke(.dynamic)
    at net.minecraftforge.fml.common.eventhandler.ASMEventHandler.invoke(ASMEventHandler.java:90)
    at net.minecraftforge.fml.common.eventhandler.EventBus.post(EventBus.java:182)
    at net.minecraftforge.fml.common.FMLCommonHandler.onPreWorldTick(FMLCommonHandler.java:287)
    at net.minecraft.server.MinecraftServer.updateTimeLightAndEntities(MinecraftServer.java:752)
    at net.minecraft.server.dedicated.DedicatedServer.updateTimeLightAndEntities(DedicatedServer.java:397)
    at net.minecraft.server.MinecraftServer.tick(MinecraftServer.java:668)
    at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:526)
    at java.lang.Thread.run(Thread.java:750)

Additional Information: I've recently noticed a drastic hit to the TPS performance of my server (normally runs 20 TPS around 3-4ms, now seeing 18-20 TPS around 34-60ms). After running LagGoggles, it reported that around 40-50% of the tick time was going to MTS/IV itself.

Full Crash Report File:
crash-2023-09-11_21.15.26-server.txt

commented

This is due to UNU updates, and internal code changes that are not yet optimized. The collision checks though are likely due to a bad pack doing Bad Stuff. If you join Discord I can send you a test build with some fault code that will crash the game with a better report to say exactly what vehicle/pack is causing this issue.

commented

Hi @DonBruce64,

Sorry for completely missing that you responded! Been a busy few weeks for myself, although I will try to join the Discord this week and let you know so I can test and narrow the issue down.

commented

Addressed in 22.12.0.