LuminolMC / Luminol

轻量级、优化且功能齐全的 Folia 分支,专为生存和无政府状态服务器而设计
MIT License
175 stars 16 forks source link

Error when use /rtp with bossbar of tps #24

Closed mani1232 closed 2 months ago

mani1232 commented 2 months ago

服务端版本 LuminolMC Version

Latest 1.21

预期的行为 Expected behavior

Use /rtp and server dont crush

观测到的实际行为 Observed/Actual behavior

[20:13:42 INFO]: mani1232 issued server command: /rtp
[20:14:06 ERROR]: [io.papermc.paper.threadedregions.TickRegionScheduler] Region #237 centered at chunk [2402, -427] in world 'world' failed to tick:
net.minecraft.ReportedException: Exception ticking world
        at net.minecraft.server.MinecraftServer.tickChildren(MinecraftServer.java:1944) ~[luminol-1.21.jar:1.21-DEV-32db7a4]
        at net.minecraft.server.dedicated.DedicatedServer.tickChildren(DedicatedServer.java:475) ~[luminol-1.21.jar:1.21-DEV-32db7a4]
        at net.minecraft.server.MinecraftServer.tickServer(MinecraftServer.java:1751) ~[luminol-1.21.jar:1.21-DEV-32db7a4]
        at io.papermc.paper.threadedregions.TickRegions$ConcreteRegionTickHandle.tickRegion(TickRegions.java:407) ~[luminol-1.21.jar:1.21-DEV-32db7a4]
        at io.papermc.paper.threadedregions.TickRegionScheduler$RegionScheduleHandle.runTick(TickRegionScheduler.java:409) ~[luminol-1.21.jar:1.21-DEV-32db7a4]
        at ca.spottedleaf.concurrentutil.scheduler.SchedulerThreadPool$TickThreadRunner.run(SchedulerThreadPool.java:540) ~[luminol-1.21.jar:1.21-DEV-32db7a4]
        at java.base/java.lang.Thread.run(Thread.java:1583) ~[?:?]
Caused by: java.lang.ArrayIndexOutOfBoundsException: Index -1 out of bounds for length 2049
        at it.unimi.dsi.fastutil.objects.Reference2IntOpenHashMap.rehash(Reference2IntOpenHashMap.java:1348) ~[fastutil-8.5.12.jar:?]
        at it.unimi.dsi.fastutil.objects.Reference2IntOpenHashMap.insert(Reference2IntOpenHashMap.java:254) ~[fastutil-8.5.12.jar:?]
        at it.unimi.dsi.fastutil.objects.Reference2IntOpenHashMap.putIfAbsent(Reference2IntOpenHashMap.java:423) ~[fastutil-8.5.12.jar:?]
        at ca.spottedleaf.moonrise.common.list.ReferenceList.add(ReferenceList.java:65) ~[luminol-1.21.jar:1.21-DEV-32db7a4]
        at ca.spottedleaf.moonrise.common.util.ChunkSystem.onChunkBorder(ChunkSystem.java:92) ~[luminol-1.21.jar:1.21-DEV-32db7a4]
        at ca.spottedleaf.moonrise.patches.chunk_system.scheduling.NewChunkHolder.handleFullStatusChange(NewChunkHolder.java:1296) ~[luminol-1.21.jar:1.21-DEV-32db7a4]
        at ca.spottedleaf.moonrise.patches.chunk_system.scheduling.ChunkHolderManager.processPendingFullUpdate(ChunkHolderManager.java:1514) ~[luminol-1.21.jar:1.21-DEV-32db7a4]
        at ca.spottedleaf.moonrise.patches.chunk_system.scheduling.ChunkHolderManager.processTicketUpdates(ChunkHolderManager.java:1492) ~[luminol-1.21.jar:1.21-DEV-32db7a4]
        at ca.spottedleaf.moonrise.patches.chunk_system.scheduling.ChunkHolderManager.processTicketUpdates(ChunkHolderManager.java:1446) ~[luminol-1.21.jar:1.21-DEV-32db7a4]
        at net.minecraft.server.level.ServerChunkCache.runDistanceManagerUpdates(ServerChunkCache.java:340) ~[luminol-1.21.jar:1.21-DEV-32db7a4]
        at net.minecraft.server.level.ServerChunkCache$MainThreadExecutor.pollTask(ServerChunkCache.java:813) ~[luminol-1.21.jar:1.21-DEV-32db7a4]
        at net.minecraft.server.level.ServerChunkCache.pollTask(ServerChunkCache.java:336) ~[luminol-1.21.jar:1.21-DEV-32db7a4]
        at net.minecraft.server.MinecraftServer.tickMidTickTasks(MinecraftServer.java:390) ~[luminol-1.21.jar:1.21-DEV-32db7a4]
        at net.minecraft.server.MinecraftServer.moonrise$executeMidTickTasks(MinecraftServer.java:404) ~[luminol-1.21.jar:1.21-DEV-32db7a4]
        at net.minecraft.server.level.ServerLevel.tickFluid(ServerLevel.java:1326) ~[luminol-1.21.jar:1.21-DEV-32db7a4]
        at net.minecraft.world.ticks.LevelTicks.runCollectedTicks(LevelTicks.java:266) ~[luminol-1.21.jar:1.21-DEV-32db7a4]
        at net.minecraft.world.ticks.LevelTicks.tick(LevelTicks.java:157) ~[luminol-1.21.jar:1.21-DEV-32db7a4]
        at net.minecraft.server.level.ServerLevel.tick(ServerLevel.java:750) ~[luminol-1.21.jar:1.21-DEV-32db7a4]
        at net.minecraft.server.MinecraftServer.tickChildren(MinecraftServer.java:1937) ~[luminol-1.21.jar:1.21-DEV-32db7a4]
        ... 6 more

复现步骤 Steps/models to reproduce

/tps /rtp

插件与数据包列表。 Plugin and Datapack List.

image

更多详细信息。 The more information.

No response

mani1232 commented 2 months ago
[20:16:17 ERROR]: [io.papermc.paper.threadedregions.TickRegionScheduler] Region #4 centered at chunk [2385, -424] in world 'world' failed to tick:
java.lang.ArrayIndexOutOfBoundsException: Index 11 out of bounds for length 10
        at me.lucko.spark.paper.common.monitor.tick.SparkTickStatistics$TpsRollingAverage.add(SparkTickStatistics.java:181) ~[spark-paper-1.10.84-20240720.204128-1.jar:?]
        at me.lucko.spark.paper.common.monitor.tick.SparkTickStatistics.onTick(SparkTickStatistics.java:88) ~[spark-paper-1.10.84-20240720.204128-1.jar:?]
        at me.lucko.spark.paper.common.tick.AbstractTickHook.onTick(AbstractTickHook.java:33) ~[spark-paper-1.10.84-20240720.204128-1.jar:?]
        at me.lucko.spark.paper.PaperTickHook.onTick(PaperTickHook.java:43) ~[spark-paper-1.10.84-20240720.204128-1.jar:?]
        at me.lucko.spark.paper.PaperSparkPlugin.onServerTickStart(PaperSparkPlugin.java:96) ~[spark-paper-1.10.84-20240720.204128-1.jar:?]
        at io.papermc.paper.SparksFly.tickStart(SparksFly.java:147) ~[luminol-1.21.jar:1.21-DEV-32db7a4]
        at net.minecraft.server.MinecraftServer.tickServer(MinecraftServer.java:1676) ~[luminol-1.21.jar:1.21-DEV-32db7a4]
        at io.papermc.paper.threadedregions.TickRegions$ConcreteRegionTickHandle.tickRegion(TickRegions.java:407) ~[luminol-1.21.jar:1.21-DEV-32db7a4]
        at io.papermc.paper.threadedregions.TickRegionScheduler$RegionScheduleHandle.runTick(TickRegionScheduler.java:409) ~[luminol-1.21.jar:1.21-DEV-32db7a4]
        at ca.spottedleaf.concurrentutil.scheduler.SchedulerThreadPool$TickThreadRunner.run(SchedulerThreadPool.java:540) ~[luminol-1.21.jar:1.21-DEV-32db7a4]
        at java.base/java.lang.Thread.run(Thread.java:1583) ~[?:?]
mani1232 commented 2 months ago

https://github.com/PaperMC/Folia/commit/61dcc07256e1dfeb89bc77c826779699a9fd331a

this maybe fix

mani1232 commented 2 months ago

Bruh, it just disable spark

MrHua269 commented 2 months ago

服务端版本 LuminolMC Version

Latest 1.21

预期的行为 Expected behavior

Use /rtp and server dont crush

观测到的实际行为 Observed/Actual behavior

[20:13:42 INFO]: mani1232 issued server command: /rtp
[20:14:06 ERROR]: [io.papermc.paper.threadedregions.TickRegionScheduler] Region #237 centered at chunk [2402, -427] in world 'world' failed to tick:
net.minecraft.ReportedException: Exception ticking world
        at net.minecraft.server.MinecraftServer.tickChildren(MinecraftServer.java:1944) ~[luminol-1.21.jar:1.21-DEV-32db7a4]
        at net.minecraft.server.dedicated.DedicatedServer.tickChildren(DedicatedServer.java:475) ~[luminol-1.21.jar:1.21-DEV-32db7a4]
        at net.minecraft.server.MinecraftServer.tickServer(MinecraftServer.java:1751) ~[luminol-1.21.jar:1.21-DEV-32db7a4]
        at io.papermc.paper.threadedregions.TickRegions$ConcreteRegionTickHandle.tickRegion(TickRegions.java:407) ~[luminol-1.21.jar:1.21-DEV-32db7a4]
        at io.papermc.paper.threadedregions.TickRegionScheduler$RegionScheduleHandle.runTick(TickRegionScheduler.java:409) ~[luminol-1.21.jar:1.21-DEV-32db7a4]
        at ca.spottedleaf.concurrentutil.scheduler.SchedulerThreadPool$TickThreadRunner.run(SchedulerThreadPool.java:540) ~[luminol-1.21.jar:1.21-DEV-32db7a4]
        at java.base/java.lang.Thread.run(Thread.java:1583) ~[?:?]
Caused by: java.lang.ArrayIndexOutOfBoundsException: Index -1 out of bounds for length 2049
        at it.unimi.dsi.fastutil.objects.Reference2IntOpenHashMap.rehash(Reference2IntOpenHashMap.java:1348) ~[fastutil-8.5.12.jar:?]
        at it.unimi.dsi.fastutil.objects.Reference2IntOpenHashMap.insert(Reference2IntOpenHashMap.java:254) ~[fastutil-8.5.12.jar:?]
        at it.unimi.dsi.fastutil.objects.Reference2IntOpenHashMap.putIfAbsent(Reference2IntOpenHashMap.java:423) ~[fastutil-8.5.12.jar:?]
        at ca.spottedleaf.moonrise.common.list.ReferenceList.add(ReferenceList.java:65) ~[luminol-1.21.jar:1.21-DEV-32db7a4]
        at ca.spottedleaf.moonrise.common.util.ChunkSystem.onChunkBorder(ChunkSystem.java:92) ~[luminol-1.21.jar:1.21-DEV-32db7a4]
        at ca.spottedleaf.moonrise.patches.chunk_system.scheduling.NewChunkHolder.handleFullStatusChange(NewChunkHolder.java:1296) ~[luminol-1.21.jar:1.21-DEV-32db7a4]
        at ca.spottedleaf.moonrise.patches.chunk_system.scheduling.ChunkHolderManager.processPendingFullUpdate(ChunkHolderManager.java:1514) ~[luminol-1.21.jar:1.21-DEV-32db7a4]
        at ca.spottedleaf.moonrise.patches.chunk_system.scheduling.ChunkHolderManager.processTicketUpdates(ChunkHolderManager.java:1492) ~[luminol-1.21.jar:1.21-DEV-32db7a4]
        at ca.spottedleaf.moonrise.patches.chunk_system.scheduling.ChunkHolderManager.processTicketUpdates(ChunkHolderManager.java:1446) ~[luminol-1.21.jar:1.21-DEV-32db7a4]
        at net.minecraft.server.level.ServerChunkCache.runDistanceManagerUpdates(ServerChunkCache.java:340) ~[luminol-1.21.jar:1.21-DEV-32db7a4]
        at net.minecraft.server.level.ServerChunkCache$MainThreadExecutor.pollTask(ServerChunkCache.java:813) ~[luminol-1.21.jar:1.21-DEV-32db7a4]
        at net.minecraft.server.level.ServerChunkCache.pollTask(ServerChunkCache.java:336) ~[luminol-1.21.jar:1.21-DEV-32db7a4]
        at net.minecraft.server.MinecraftServer.tickMidTickTasks(MinecraftServer.java:390) ~[luminol-1.21.jar:1.21-DEV-32db7a4]
        at net.minecraft.server.MinecraftServer.moonrise$executeMidTickTasks(MinecraftServer.java:404) ~[luminol-1.21.jar:1.21-DEV-32db7a4]
        at net.minecraft.server.level.ServerLevel.tickFluid(ServerLevel.java:1326) ~[luminol-1.21.jar:1.21-DEV-32db7a4]
        at net.minecraft.world.ticks.LevelTicks.runCollectedTicks(LevelTicks.java:266) ~[luminol-1.21.jar:1.21-DEV-32db7a4]
        at net.minecraft.world.ticks.LevelTicks.tick(LevelTicks.java:157) ~[luminol-1.21.jar:1.21-DEV-32db7a4]
        at net.minecraft.server.level.ServerLevel.tick(ServerLevel.java:750) ~[luminol-1.21.jar:1.21-DEV-32db7a4]
        at net.minecraft.server.MinecraftServer.tickChildren(MinecraftServer.java:1937) ~[luminol-1.21.jar:1.21-DEV-32db7a4]
        ... 6 more

复现步骤 Steps/models to reproduce

/tps /rtp

插件与数据包列表。 Plugin and Datapack List.

image

更多详细信息。 The more information.

No response

This may be a concurrency bug of the chunk system of folia, please report it to folia

mani1232 commented 2 months ago

@MrHua269 Upstream folia, he created a few fixes

MrHua269 commented 2 months ago

Updated in 84cf8fbb382af1f66d754e40f2f9afddab1e1a49