astei / krypton

A Fabric mod that optimizes the Minecraft networking stack and entity tracker.
GNU Lesser General Public License v3.0
367 stars 34 forks source link

Cause server crash when use krypton #107

Closed disymayufei closed 1 year ago

disymayufei commented 1 year ago

That's stack trace in crash log:

java.lang.Error: Watchdog at io.netty.channel.ChannelOutboundBuffer.addFlush(ChannelOutboundBuffer.java:155) at io.netty.channel.AbstractChannel$AbstractUnsafe.flush(AbstractChannel.java:894) at io.netty.channel.embedded.EmbeddedChannel$EmbeddedUnsafe$1.flush(EmbeddedChannel.java:894) at io.netty.channel.DefaultChannelPipeline$HeadContext.flush(DefaultChannelPipeline.java:1372) at io.netty.channel.AbstractChannelHandlerContext.invokeFlush0(AbstractChannelHandlerContext.java:750) at io.netty.channel.AbstractChannelHandlerContext.invokeFlush(AbstractChannelHandlerContext.java:742) at io.netty.channel.AbstractChannelHandlerContext.flush(AbstractChannelHandlerContext.java:728) at io.netty.channel.DefaultChannelPipeline.flush(DefaultChannelPipeline.java:967) at io.netty.channel.AbstractChannel.flush(AbstractChannel.java:254) at net.minecraft.network.ClientConnection.doSendPacket(ClientConnection.java:3122) at net.minecraft.network.ClientConnection.handler$dal000$krypton$sendImmediately$rewrite(ClientConnection.java:3065) at net.minecraft.network.ClientConnection.sendImmediately(ClientConnection.java:199) at net.minecraft.network.ClientConnection.send(ClientConnection.java:190) at net.minecraft.server.network.ServerPlayNetworkHandler.sendPacket(ServerPlayNetworkHandler.java:1253) at net.minecraft.server.network.ServerPlayerEntity.sendMessageToClient(ServerPlayerEntity.java:1369) at net.minecraft.server.PlayerManager.broadcast(PlayerManager.java:813) at net.minecraft.server.PlayerManager.broadcast(PlayerManager.java:805) at net.minecraft.server.network.ServerPlayNetworkHandler.onDisconnected(ServerPlayNetworkHandler.java:1226) at net.minecraft.network.ClientConnection.handleDisconnection(ClientConnection.java:452) at net.minecraft.server.ServerNetworkIo.tick(ServerNetworkIo.java:185) at net.minecraft.server.MinecraftServer.tickWorlds(MinecraftServer.java:908) at net.minecraft.server.dedicated.MinecraftDedicatedServer.tickWorlds(MinecraftDedicatedServer.java:283) at net.minecraft.server.MinecraftServer.tick(MinecraftServer.java:824) at net.minecraft.server.MinecraftServer.handler$zho000$carpet$modifiedRunLoop(MinecraftServer.java:14942) at net.minecraft.server.MinecraftServer.runServer(MinecraftServer.java:650) at net.minecraft.server.MinecraftServer.method_29739(MinecraftServer.java:265) at net.minecraft.server.MinecraftServer$$Lambda$7022/0x0000000801b640a8.run(Unknown Source) at java.lang.Thread.run(Thread.java:833)

astei commented 1 year ago

sounds like your server is lagging out and it just so happened that the server watchdog triggered while the server was trying to send a packet

disymayufei commented 11 months ago

Maybe from this? https://github.com/netty/netty/issues/3938

astei commented 11 months ago

That issue is caused by something neither vanilla or Krypton does

disymayufei commented 11 months ago

not from vanilla?

astei commented 11 months ago

If you had really read the issue, it's caused by someone migrating channels between event loops. Neither vanilla or Krypton does this.

...so the issue is definitely not in Krypton.