在开启ServuxEntityDataProtocol的情况下,跨区域传送时引发崩溃
服务端版本 LophineMC Version
Lophine version 1.21.8-DEV-ver/1.21.8@b7bf1b5
预期的行为 Expected behavior
ServuxEntityDataProtocol开启后,服务器正常运行,不会崩溃
观测到的实际行为 Observed/Actual behavior
开启ServuxEntityDataProtocol后,玩家传送到一些位置,崩溃,报错如下:
[16:41:08] [Region Scheduler Thread #2/ERROR]: [ca.spottedleaf.moonrise.common.util.TickThread] Thread failed main thread check: Cannot asynchronously load chunks, context=[thread=Region Scheduler Thread #2,class=io.papermc.paper.threadedregions.TickRegionScheduler$TickThreadRunner,region={center=[636, 516],world=world_nether}], world=world_nether, chunk_pos=[3687, 4390] java.lang.Throwable: null at ca.spottedleaf.moonrise.common.util.TickThread.ensureTickThread(TickThread.java:88) ~[lophine-1.21.8.jar:1.21.8-DEV-b7bf1b5] at net.minecraft.server.level.ServerChunkCache.syncLoad(ServerChunkCache.java:103) ~[lophine-1.21.8.jar:1.21.8-DEV-b7bf1b5] at net.minecraft.server.level.ServerChunkCache.getChunkFallback(ServerChunkCache.java:156) ~[lophine-1.21.8.jar:1.21.8-DEV-b7bf1b5] at net.minecraft.server.level.ServerChunkCache.getChunk(ServerChunkCache.java:330) ~[lophine-1.21.8.jar:1.21.8-DEV-b7bf1b5] at net.minecraft.world.level.Level.getChunk(Level.java:1029) ~[lophine-1.21.8.jar:1.21.8-DEV-b7bf1b5] at net.minecraft.world.level.Level.getChunkAt(Level.java:1018) ~[lophine-1.21.8.jar:1.21.8-DEV-b7bf1b5] at net.minecraft.world.level.Level.getBlockEntity(Level.java:1699) ~[lophine-1.21.8.jar:1.21.8-DEV-b7bf1b5] at org.leavesmc.leaves.protocol.servux.ServuxEntityDataProtocol.lambda$onBlockEntityRequest$0(ServuxEntityDataProtocol.java:107) ~[lophine-1.21.8.jar:1.21.8-DEV-b7bf1b5] at io.papermc.paper.threadedregions.EntityScheduler.executeTick(EntityScheduler.java:243) ~[lophine-1.21.8.jar:1.21.8-DEV-b7bf1b5] at net.minecraft.server.MinecraftServer.tickServer(MinecraftServer.java:1667) ~[lophine-1.21.8.jar:1.21.8-DEV-b7bf1b5] at io.papermc.paper.threadedregions.TickRegions$ConcreteRegionTickHandle.tickRegion(TickRegions.java:409) ~[lophine-1.21.8.jar:1.21.8-DEV-b7bf1b5] at io.papermc.paper.threadedregions.TickRegionScheduler$RegionScheduleHandle.runTick(TickRegionScheduler.java:452) ~[lophine-1.21.8.jar:1.21.8-DEV-b7bf1b5] at ca.spottedleaf.concurrentutil.scheduler.SchedulerThreadPool$TickThreadRunner.run(SchedulerThreadPool.java:546) ~[concurrentutil-0.0.3.jar:?] at java.base/java.lang.Thread.run(Thread.java:1583) ~[?:?] [16:41:08] [Region Scheduler Thread #2/ERROR]: [io.papermc.paper.threadedregions.TickRegionScheduler] Region #1198461 centered at chunk [636, 516] in world 'world_nether' failed to tick: java.lang.IllegalStateException: Thread failed main thread check: Cannot asynchronously load chunks, context=[thread=Region Scheduler Thread #2,class=io.papermc.paper.threadedregions.TickRegionScheduler$TickThreadRunner,region={center=[636, 516],world=world_nether}], world=world_nether, chunk_pos=[3687, 4390] at ca.spottedleaf.moonrise.common.util.TickThread.ensureTickThread(TickThread.java:89) ~[lophine-1.21.8.jar:1.21.8-DEV-b7bf1b5] at net.minecraft.server.level.ServerChunkCache.syncLoad(ServerChunkCache.java:103) ~[lophine-1.21.8.jar:1.21.8-DEV-b7bf1b5] at net.minecraft.server.level.ServerChunkCache.getChunkFallback(ServerChunkCache.java:156) ~[lophine-1.21.8.jar:1.21.8-DEV-b7bf1b5] at net.minecraft.server.level.ServerChunkCache.getChunk(ServerChunkCache.java:330) ~[lophine-1.21.8.jar:1.21.8-DEV-b7bf1b5] at net.minecraft.world.level.Level.getChunk(Level.java:1029) ~[lophine-1.21.8.jar:1.21.8-DEV-b7bf1b5] at net.minecraft.world.level.Level.getChunkAt(Level.java:1018) ~[lophine-1.21.8.jar:1.21.8-DEV-b7bf1b5] at net.minecraft.world.level.Level.getBlockEntity(Level.java:1699) ~[lophine-1.21.8.jar:1.21.8-DEV-b7bf1b5] at org.leavesmc.leaves.protocol.servux.ServuxEntityDataProtocol.lambda$onBlockEntityRequest$0(ServuxEntityDataProtocol.java:107) ~[lophine-1.21.8.jar:1.21.8-DEV-b7bf1b5] at io.papermc.paper.threadedregions.EntityScheduler.executeTick(EntityScheduler.java:243) ~[lophine-1.21.8.jar:1.21.8-DEV-b7bf1b5] at net.minecraft.server.MinecraftServer.tickServer(MinecraftServer.java:1667) ~[lophine-1.21.8.jar:1.21.8-DEV-b7bf1b5] at io.papermc.paper.threadedregions.TickRegions$ConcreteRegionTickHandle.tickRegion(TickRegions.java:409) ~[lophine-1.21.8.jar:1.21.8-DEV-b7bf1b5] at io.papermc.paper.threadedregions.TickRegionScheduler$RegionScheduleHandle.runTick(TickRegionScheduler.java:452) ~[lophine-1.21.8.jar:1.21.8-DEV-b7bf1b5] at ca.spottedleaf.concurrentutil.scheduler.SchedulerThreadPool$TickThreadRunner.run(SchedulerThreadPool.java:546) ~[concurrentutil-0.0.3.jar:?] at java.base/java.lang.Thread.run(Thread.java:1583) ~[?:?] [16:41:08] [Region shutdown thread/INFO]: [RegionShutdownThread] Awaiting scheduler termination for 60s... [16:41:08] [Region shutdown thread/INFO]: [RegionShutdownThread] Scheduler halted [16:41:08] [Region shutdown thread/INFO]: Stopping server
复现步骤 Steps/models to reproduce
开启ServuxEntityDataProtocol后,玩家传送到一些位置,崩溃
插件与数据包列表。 Plugin and Datapack List.
? Server Plugins : [21:05:20 INFO]: Paper Plugins (1): [21:05:20 INFO]: - FancyHolograms [21:05:20 INFO]: Bukkit Plugins: [21:05:20 INFO]: - ChunkEntityLimiter, Chunky, CMILib, JoinChoice, ProtocolLib, QuickShop-Hikari, QuickShopForm, *RedisEconomy, Residence, Vault, WorldEdit
更多详细信息。 The more information.
No response
try 38a1ce044362774981efc41d4e2f6494bd2edccb