This is a very corrupting bug I found with non loaded tile entities, Using data modifiers, or natural generation, if you change the block with any loot table from any chest type to a barrel will corrupt the block causing (if) on a server shows errors, and when tried to destroy, will cause the player to get kicked, a reload or restart doesn't work on my 1.17 server, after that my server didn't start anymore, when I downloaded the world, it just doesn't work, in a unknown way, the world was corrupted.
Crash report: (text file isn't available, unmodded minecraft wont show crash report nor singleplayer, this was from paper bukkit, 1.17)
---- Minecraft Crash Report -------- Minecraft Crash Report ----// Ouch. That hurt :(
Time: 7/9/21, 5:29 AMDescription: Exception in server tick loop
java.lang.RuntimeException: Failed to read BlockState at: world: world location: (-218, 70, 262) at org.bukkit.craftbukkit.v1_17_R1.block.CraftBlockEntityState.<init>(CraftBlockEntityState.java:48) at org.bukkit.craftbukkit.v1_17_R1.block.CraftContainer.<init>(CraftContainer.java:13) at org.bukkit.craftbukkit.v1_17_R1.block.CraftLootable.<init>(CraftLootable.java:16) at org.bukkit.craftbukkit.v1_17_R1.block.CraftBarrel.<init>(CraftBarrel.java:16) at org.bukkit.craftbukkit.v1_17_R1.block.CraftBlock.getState0(CraftBlock.java:472) at org.bukkit.craftbukkit.v1_17_R1.block.CraftBlock.getState(CraftBlock.java:326) at org.bukkit.craftbukkit.v1_17_R1.CraftChunk.getTileEntities(CraftChunk.java:146) at co.aikar.timings.TimingHistory$2.apply(TimingHistory.java:122) at co.aikar.timings.TimingHistory$2.apply(TimingHistory.java:104) at co.aikar.util.JSONUtil.toObjectMapper(JSONUtil.java:119) at co.aikar.timings.TimingHistory.<init>(TimingHistory.java:104) at co.aikar.timings.FullServerTickHandler.stopTiming(FullServerTickHandler.java:76) at app//net.minecraft.server.MinecraftServer.tickServer(MinecraftServer.java:1482) at app//net.minecraft.server.MinecraftServer.runServer(MinecraftServer.java:1180) at app//net.minecraft.server.MinecraftServer.lambda$spin$0(MinecraftServer.java:320) at java.base/java.lang.Thread.run(Thread.java:831)Caused by: java.lang.ClassCastException: Cannot cast net.minecraft.world.level.block.entity.TileEntityChestTrapped to net.minecraft.world.level.block.entity.TileEntityBarrel at java.base/java.lang.Class.cast(Class.java:3818) at org.bukkit.craftbukkit.v1_17_R1.block.CraftBlockEntityState.<init>(CraftBlockEntityState.java:28) ... 15 moreA detailed walkthrough of the error, its code path and all known details is as follows:---------------------------------------------------------------------------------------
-- System Details --Details: Minecraft Version: 1.17 Minecraft Version ID: 1.17 Operating System: Linux (amd64) version 4.19.0-17-amd64 Java Version: 16.0.1, AdoptOpenJDK Java VM Version: OpenJDK 64-Bit Server VM (mixed mode, sharing), AdoptOpenJDK Memory: 461400392 bytes (440 MiB) / 1158430720 bytes (1104 MiB) up to 3040870400 bytes (2900 MiB) CPUs: 1 Processor Vendor: AuthenticAMD Processor Name: AMD EPYC 7502P 32-Core Processor Identifier: AuthenticAMD Family 23 Model 49 Stepping 0 Microarchitecture: Zen 2 Frequency (GHz): -0.00 Number of physical packages: 1 Number of physical CPUs: 32 Number of logical CPUs: 64 Graphics card #0 name: unknown Graphics card #0 vendor: unknown Graphics card #0 VRAM (MB): 0.00 Graphics card #0 deviceId: unknown Graphics card #0 versionInfo: unknown Virtual memory max (MB): 391085.41 Virtual memory used (MB): 513651.22 Swap memory total (MB): 262144.00 Swap memory used (MB): 262137.69 JVM Flags: 2 total; -Xms256M -Xmx3000M CraftBukkit Information: Running: Paper version git-Paper-79 (MC: 1.17) (Implementing API version 1.17-R0.1-SNAPSHOT) false Plugins: {} Warnings: DEFAULT Reload Count: 0 Threads: { WAITING Worker-Main-1: [[email protected]/jdk.internal.misc.Unsafe.park(Native Method), [email protected]/java.util.concurrent.locks.LockSupport.park(LockSupport.java:341), [email protected]/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionNode.block(AbstractQueuedSynchronizer.java:505), [email protected]/java.util.concurrent.ForkJoinPool.managedBlock(ForkJoinPool.java:3137), [email protected]/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:1614), [email protected]/java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:435), [email protected]/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1056), [email protected]/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1116), [email protected]/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:630), [email protected]/java.lang.Thread.run(Thread.java:831)], WAITING Paper Object Cleaner: [[email protected]/jdk.internal.misc.Unsafe.park(Native Method), [email protected]/java.util.concurrent.locks.LockSupport.park(LockSupport.java:341), [email protected]/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionNode.block(AbstractQueuedSynchronizer.java:505), [email protected]/java.util.concurrent.ForkJoinPool.managedBlock(ForkJoinPool.java:3137), [email protected]/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:1614), [email protected]/java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:435), [email protected]/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1056), [email protected]/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1116), [email protected]/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:630), [email protected]/java.lang.Thread.run(Thread.java:831)], WAITING world_the_end - Light: [[email protected]/jdk.internal.misc.Unsafe.park(Native Method), [email protected]/java.util.concurrent.locks.LockSupport.park(LockSupport.java:341), [email protected]/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionNode.block(AbstractQueuedSynchronizer.java:505), [email protected]/java.util.concurrent.ForkJoinPool.managedBlock(ForkJoinPool.java:3137), [email protected]/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:1614), [email protected]/java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:435), [email protected]/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1056), [email protected]/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1116), [email protected]/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:630), [email protected]/java.lang.Thread.run(Thread.java:831)], TIMED_WAITING pool-4-thread-1: [[email protected]/jdk.internal.misc.Unsafe.park(Native Method), [email protected]/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:252), [email protected]/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:1661), [email protected]/java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:1182), [email protected]/java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:899), [email protected]/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1056), [email protected]/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1116), [email protected]/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:630), [email protected]/java.lang.Thread.run(Thread.java:831)], WAITING Finalizer: [[email protected]/java.lang.Object.wait(Native Method), [email protected]/java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:155), [email protected]/java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:176), [email protected]/java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:171)], TIMED_WAITING Common-Cleaner: [[email protected]/java.lang.Object.wait(Native Method), [email protected]/java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:155), [email protected]/jdk.internal.ref.CleanerImpl.run(CleanerImpl.java:140), [email protected]/java.lang.Thread.run(Thread.java:831), [email protected]/jdk.internal.misc.InnocuousThread.run(InnocuousThread.java:134)], RUNNABLE Netty Epoll Server IO #2: [app//io.netty.channel.epoll.Native.epollWait0(Native Method), app//io.netty.channel.epoll.Native.epollWait(Native.java:176), app//io.netty.channel.epoll.EpollEventLoop.epollWait(EpollEventLoop.java:281), app//io.netty.channel.epoll.EpollEventLoop.run(EpollEventLoop.java:351), app//io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:989), app//io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74), [email protected]/java.lang.Thread.run(Thread.java:831)], RUNNABLE Netty Epoll Server IO #1: [app//io.netty.channel.epoll.Native.epollWait0(Native Method), app//io.netty.channel.epoll.Native.epollWait(Native.java:176), app//io.netty.channel.epoll.EpollEventLoop.epollWait(EpollEventLoop.java:281), app//io.netty.channel.epoll.EpollEventLoop.run(EpollEventLoop.java:351), app//io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:989), app//io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74), [email protected]/java.lang.Thread.run(Thread.java:831)], RUNNABLE Server console handler: [[email protected]/java.io.FileInputStream.readBytes(Native Method), [email protected]/java.io.FileInputStream.read(FileInputStream.java:271), [email protected]/java.io.BufferedInputStream.read1(BufferedInputStream.java:282), [email protected]/java.io.BufferedInputStream.read(BufferedInputStream.java:343), [email protected]/sun.nio.cs.StreamDecoder.readBytes(StreamDecoder.java:297), [email protected]/sun.nio.cs.StreamDecoder.implRead(StreamDecoder.java:339), [email protected]/sun.nio.cs.StreamDecoder.read(StreamDecoder.java:188), [email protected]/java.io.InputStreamReader.read(InputStreamReader.java:178), [email protected]/java.io.BufferedReader.fill(BufferedReader.java:161), [email protected]/java.io.BufferedReader.readLine(BufferedReader.java:329), [email protected]/java.io.BufferedReader.readLine(BufferedReader.java:396), app//net.minecrell.terminalconsole.SimpleTerminalConsole.readCommands(SimpleTerminalConsole.java:180), app//net.minecrell.terminalconsole.SimpleTerminalConsole.start(SimpleTerminalConsole.java:143), app//net.minecraft.server.dedicated.DedicatedServer$1.run(DedicatedServer.java:112)], TIMED_WAITING Paper Watchdog Thread: [[email protected]/java.lang.Thread.sleep(Native Method), app//org.spigotmc.WatchdogThread.run(WatchdogThread.java:170)], RUNNABLE Signal Dispatcher: [], WAITING Paper RegionFile IO Thread: [[email protected]/jdk.internal.misc.Unsafe.park(Native Method), [email protected]/java.util.concurrent.locks.LockSupport.park(LockSupport.java:211), app//com.destroystokyo.paper.io.QueueExecutorThread.run(QueueExecutorThread.java:84)], TIMED_WAITING Log4j2-TF-1-AsyncLogger[AsyncContext@659e0bfd]-1: [[email protected]/jdk.internal.misc.Unsafe.park(Native Method), [email protected]/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:252), [email protected]/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:1661), app//com.lmax.disruptor.TimeoutBlockingWaitStrategy.waitFor(TimeoutBlockingWaitStrategy.java:38), app//com.lmax.disruptor.ProcessingSequenceBarrier.waitFor(ProcessingSequenceBarrier.java:56), app//com.lmax.disruptor.BatchEventProcessor.processEvents(BatchEventProcessor.java:159), app//com.lmax.disruptor.BatchEventProcessor.run(BatchEventProcessor.java:125), [email protected]/java.lang.Thread.run(Thread.java:831)], TIMED_WAITING Cleaner-0: [[email protected]/java.lang.Object.wait(Native Method), [email protected]/java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:155), [email protected]/jdk.internal.ref.CleanerImpl.run(CleanerImpl.java:140), [email protected]/java.lang.Thread.run(Thread.java:831), [email protected]/jdk.internal.misc.InnocuousThread.run(InnocuousThread.java:134)], RUNNABLE Server thread: [[email protected]/java.lang.Thread.dumpThreads(Native Method), [email protected]/java.lang.Thread.getAllStackTraces(Thread.java:1647), app//org.bukkit.craftbukkit.v1_17_R1.CraftCrashReport.get(CraftCrashReport.java:33), app//org.bukkit.craftbukkit.v1_17_R1.CraftCrashReport.get(CraftCrashReport.java:17), app//net.minecraft.SystemReport.a(SystemReport.java:65), app//net.minecraft.CrashReport.<init>(CrashReport.java:35), app//net.minecraft.server.MinecraftServer.x(MinecraftServer.java:1211), app//net.minecraft.server.MinecraftServer.lambda$spin$0(MinecraftServer.java:320), app//net.minecraft.server.MinecraftServer$$Lambda$3643/0x000000080139d340.run(Unknown Source), [email protected]/java.lang.Thread.run(Thread.java:831)], WAITING Craft Async Scheduler Management Thread: [[email protected]/jdk.internal.misc.Unsafe.park(Native Method), [email protected]/java.util.concurrent.locks.LockSupport.park(LockSupport.java:341), [email protected]/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionNode.block(AbstractQueuedSynchronizer.java:505), [email protected]/java.util.concurrent.ForkJoinPool.managedBlock(ForkJoinPool.java:3137), [email protected]/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:1614), [email protected]/java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:435), [email protected]/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1056), [email protected]/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1116), [email protected]/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:630), [email protected]/java.lang.Thread.run(Thread.java:831)], TIMED_WAITING Timer hack thread: [[email protected]/java.lang.Thread.sleep(Native Method), app//net.minecraft.SystemUtils$4.run(SystemUtils.java:581)], RUNNABLE Netty Epoll Server IO #0: [app//io.netty.channel.epoll.Native.epollWait(Native Method), app//io.netty.channel.epoll.Native.epollWait(Native.java:192), app//io.netty.channel.epoll.Native.epollWait(Native.java:185), app//io.netty.channel.epoll.EpollEventLoop.epollWaitNoTimerChange(EpollEventLoop.java:290), app//io.netty.channel.epoll.EpollEventLoop.run(EpollEventLoop.java:347), app//io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:989), app//io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74), [email protected]/java.lang.Thread.run(Thread.java:831)], RUNNABLE Netty Epoll Server IO #3: [app//io.netty.channel.epoll.Native.epollWait0(Native Method), app//io.netty.channel.epoll.Native.epollWait(Native.java:176), app//io.netty.channel.epoll.EpollEventLoop.epollWait(EpollEventLoop.java:281), app//io.netty.channel.epoll.EpollEventLoop.run(EpollEventLoop.java:351), app//io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:989), app//io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74), [email protected]/java.lang.Thread.run(Thread.java:831)], RUNNABLE DestroyJavaVM: [], WAITING ForkJoinPool.commonPool-worker-3: [[email protected]/jdk.internal.misc.Unsafe.park(Native Method), [email protected]/java.util.concurrent.locks.LockSupport.park(LockSupport.java:211), [email protected]/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1633), [email protected]/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:183)], WAITING world_nether - Light: [[email protected]/jdk.internal.misc.Unsafe.park(Native Method), [email protected]/java.util.concurrent.locks.LockSupport.park(LockSupport.java:341), [email protected]/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionNode.block(AbstractQueuedSynchronizer.java:505), [email protected]/java.util.concurrent.ForkJoinPool.managedBlock(ForkJoinPool.java:3137), [email protected]/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:1614), [email protected]/java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:435), [email protected]/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1056), [email protected]/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1116), [email protected]/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:630), [email protected]/java.lang.Thread.run(Thread.java:831)], TIMED_WAITING process reaper: [[email protected]/jdk.internal.misc.Unsafe.park(Native Method), [email protected]/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:252), [email protected]/java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:462), [email protected]/java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:361), [email protected]/java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:937), [email protected]/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1055), [email protected]/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1116), [email protected]/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:630), [email protected]/java.lang.Thread.run(Thread.java:831)], WAITING world - Light: [[email protected]/jdk.internal.misc.Unsafe.park(Native Method), [email protected]/java.util.concurrent.locks.LockSupport.park(LockSupport.java:341), [email protected]/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionNode.block(AbstractQueuedSynchronizer.java:505), [email protected]/java.util.concurrent.ForkJoinPool.managedBlock(ForkJoinPool.java:3137), [email protected]/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:1614), [email protected]/java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:435), [email protected]/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1056), [email protected]/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1116), [email protected]/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:630), [email protected]/java.lang.Thread.run(Thread.java:831)], RUNNABLE Notification Thread: [], WAITING Snooper Timer: [[email protected]/java.lang.Object.wait(Native Method), [email protected]/java.lang.Object.wait(Object.java:320), [email protected]/java.util.TimerThread.mainLoop(Timer.java:527), [email protected]/java.util.TimerThread.run(Timer.java:506)], RUNNABLE Reference Handler: [[email protected]/java.lang.ref.Reference.waitForReferencePendingList(Native Method), [email protected]/java.lang.ref.Reference.processPendingReferences(Reference.java:243), [email protected]/java.lang.ref.Reference$ReferenceHandler.run(Reference.java:215)],} Force Loaded Chunks: { world: {}, world_nether: {}, world_the_end: {},} Player Count: 0 / 20; [] Data Packs: vanilla, file/bukkit Is Modded: Definitely; Server brand changed to 'Paper' Type: Dedicated Server (map_server.txt)
Comments 7
Trying on a server wont show crash logs (for me and my hardware) but appears on paper and spigot servers, and the server crashes when starting in the "Timings reset" stage of paper or spigot, nor it reboots as same crash, although the log doesn't write properly showing just the timings reset no crash logs of the even, but the crash report does occur
On vanilla minecraft with the 1.17 server does crash and no longer reboots, but the crash report is missing somehow
Although paper is same as minecraft vanilla with added no lag and more warnings for me to note and report to bug tracker, and note that the barrel acts like a chest and cannot be opened, but can be in spectator even if the loot selected hasn't been generated, and the UI shows as a chest, destroying the barrel on singleplayer results in a kick and same on server (but on vanilla doesn't show errors of the block containing invalid data) after inspection, the NBT shows that the "id" of the block is a chest (trapped) but shows a barrel block, on paper shows errors (not warns or info) but shows error that the block on the coordinate was a barrel with its NBT of the loottable, it shows an error that on the world's level says that its (possibly) a chest, although any updates with the barrel is unsaved, and when using setblock the first time it errors say internal error, the second time cant set the block, the time you click on the barrel (displayed as chest) changes to a barrel, and loottable and ID are copied from the chest, although im not a expert but after the world corrupt I can't replicate it with other containers such as trapped chest and hoppers.
Although paper is same as minecraft vanilla.
This is not true. At all.
We cannot provide any support for modded versions of Minecraft, nor worlds that have been corrupted by modded versions of Minecraft.
Does vanilla still crash? If so, would you mind attaching a world that can be used to reproduce this?