Terra (Fabric/Forge/Paper)

Terra (Fabric/Forge/Paper)

74.2k Downloads

[Bug] Server Crashes when using vanilla locate command

CrashingBrain opened this issue ยท 8 comments

commented

Pre-Issue Checklist

  • I have checked that I am on the latest version of Terra.
  • I have searched the github issue tracker for similar issues, including closed ones.
  • I have made sure that this is not a bug with another mod or plugin, and it is Terra that is causing the issue.
  • I have checked that this is an issue with Terra and not an issue with the pack I am using.
  • I have attached a copy of the latest.log file
  • I have filled out and provided all the appropriate information.

Environment

Name Value
Terra Version fabric-5.3.3-BETA+6027c282
Platform / Platform Version Fabric 0.11.3 (not sure how to read that) for minecraft 1.17
Any External Plugins or Mods None
Terra Packs In Use DEFAULT v2.0.0
Terra Addons In Use Terra-Fabric v1.0.0

Issue Description

Server crashes after trying to locate vanilla structures with vanilla commands.
Chunks stop loading after issuing the command and before crashing. Moving towards unloaded chunks crashes the server

Steps to reproduce

  1. Create a new server with fabric and the latest Terra
  2. issue command /locate village
  3. wait a bit
  4. (Optional) move towards unloaded chunks to have server crash instantly

Expected behavior

server gives location coordinates of closest village, or no behaviour.

Actual behavior

No text output in ingame chat. Player is kicked out and server eventually crashes

Full stacktrace

Exception Stacktrace
---- Minecraft Crash Report ----
// I just don't know what went wrong :(

Time: 09/06/2021, 00:24
Description: Watching Server

java.lang.Error: Watchdog
	at com.dfsek.terra.api.world.biome.pipeline.TerraBiomeHolder.mutate(TerraBiomeHolder.java:56)
	at com.dfsek.terra.api.world.biome.pipeline.stages.MutatorStage.apply(MutatorStage.java:20)
	at com.dfsek.terra.api.world.biome.pipeline.BiomePipeline.getBiomes(BiomePipeline.java:35)
	at com.dfsek.terra.api.world.biome.provider.StandardBiomeProvider$1.load(StandardBiomeProvider.java:34)
	at com.dfsek.terra.api.world.biome.provider.StandardBiomeProvider$1.load(StandardBiomeProvider.java:31)
	at com.google.common.cache.LocalCache$LoadingValueReference.loadFuture(LocalCache.java:3716)
	at com.google.common.cache.LocalCache$Segment.loadSync(LocalCache.java:2424)
	at com.google.common.cache.LocalCache$Segment.lockedGetOrLoad(LocalCache.java:2298)
	at com.google.common.cache.LocalCache$Segment.get(LocalCache.java:2211)
	at com.google.common.cache.LocalCache.get(LocalCache.java:4154)
	at com.google.common.cache.LocalCache.getOrLoad(LocalCache.java:4158)
	at com.google.common.cache.LocalCache$LocalLoadingCache.get(LocalCache.java:5147)
	at com.google.common.cache.LocalCache$LocalLoadingCache.getUnchecked(LocalCache.java:5153)
	at com.dfsek.terra.api.world.biome.provider.StandardBiomeProvider.getBiome(StandardBiomeProvider.java:53)
	at com.dfsek.terra.fabric.generation.TerraBiomeSource.method_16359(TerraBiomeSource.java:56)
	at net.minecraft.class_3218.method_22387(class_3218.java:236)
	at net.minecraft.class_4538.method_16359(class_4538.java:67)
	at net.minecraft.class_4543$class_4544.method_31609(class_4543.java:61)
	at net.minecraft.class_4543.method_31608(class_4543.java:54)
	at net.minecraft.class_3195.method_14015(class_3195.java:195)
	at net.minecraft.class_2794.method_12103(class_2794.java:227)
	at com.dfsek.terra.fabric.generation.FabricChunkGeneratorWrapper.method_12103(FabricChunkGeneratorWrapper.java:122)
	at net.minecraft.class_3218.method_8487(class_3218.java:1044)
	at net.minecraft.class_3079.method_13457(class_3079.java:39)
	at net.minecraft.class_3079.method_29192(class_3079.java:31)
	at net.minecraft.class_3079$$Lambda$3732/0x000000080162d3c0.run(Unknown Source)
	at com.mojang.brigadier.CommandDispatcher.execute(CommandDispatcher.java:263)
	at com.mojang.brigadier.CommandDispatcher.execute(CommandDispatcher.java:177)
	at net.minecraft.class_2170.method_9249(class_2170.java:251)
	at net.minecraft.class_3244.method_14370(class_3244.java:1239)
	at net.minecraft.class_3244.method_31286(class_3244.java:1223)
	at net.minecraft.class_3244.method_12048(class_3244.java:1206)
	at net.minecraft.class_2797.method_12115(class_2797.java:30)
	at net.minecraft.class_2797.method_11054(class_2797.java:7)
	at net.minecraft.class_2600.method_11072(class_2600.java:21)
	at net.minecraft.class_2600$$Lambda$5168/0x00000008019a8400.run(Unknown Source)
	at net.minecraft.class_3738.run(class_3738.java:18)
	at net.minecraft.class_1255.method_18859(class_1255.java:151)
	at net.minecraft.class_4093.method_18859(class_4093.java:23)
	at net.minecraft.server.MinecraftServer.method_24306(MinecraftServer.java:783)
	at net.minecraft.server.MinecraftServer.method_18859(MinecraftServer.java:167)
	at net.minecraft.class_1255.method_16075(class_1255.java:125)
	at net.minecraft.server.MinecraftServer.method_20415(MinecraftServer.java:765)
	at net.minecraft.server.MinecraftServer.method_16075(MinecraftServer.java:759)
	at net.minecraft.class_1255.method_18857(class_1255.java:134)
	at net.minecraft.server.MinecraftServer.method_16208(MinecraftServer.java:744)
	at net.minecraft.server.MinecraftServer.method_29741(MinecraftServer.java:696)
	at net.minecraft.server.MinecraftServer.method_29739(MinecraftServer.java:274)
	at net.minecraft.server.MinecraftServer$$Lambda$4336/0x0000000801731438.run(Unknown Source)
	at [email protected]/java.lang.Thread.run(Thread.java:831)


A detailed walkthrough of the error, its code path and all known details is as follows:
---------------------------------------------------------------------------------------

-- Head --
Thread: Server Watchdog
Stacktrace:
	at com.dfsek.terra.api.world.biome.pipeline.TerraBiomeHolder.mutate(TerraBiomeHolder.java:56)
	at com.dfsek.terra.api.world.biome.pipeline.stages.MutatorStage.apply(MutatorStage.java:20)
	at com.dfsek.terra.api.world.biome.pipeline.BiomePipeline.getBiomes(BiomePipeline.java:35)
	at com.dfsek.terra.api.world.biome.provider.StandardBiomeProvider$1.load(StandardBiomeProvider.java:34)
	at com.dfsek.terra.api.world.biome.provider.StandardBiomeProvider$1.load(StandardBiomeProvider.java:31)
	at com.google.common.cache.LocalCache$LoadingValueReference.loadFuture(LocalCache.java:3716)
	at com.google.common.cache.LocalCache$Segment.loadSync(LocalCache.java:2424)
	at com.google.common.cache.LocalCache$Segment.lockedGetOrLoad(LocalCache.java:2298)
	at com.google.common.cache.LocalCache$Segment.get(LocalCache.java:2211)
	at com.google.common.cache.LocalCache.get(LocalCache.java:4154)
	at com.google.common.cache.LocalCache.getOrLoad(LocalCache.java:4158)
	at com.google.common.cache.LocalCache$LocalLoadingCache.get(LocalCache.java:5147)
	at com.google.common.cache.LocalCache$LocalLoadingCache.getUnchecked(LocalCache.java:5153)
	at com.dfsek.terra.api.world.biome.provider.StandardBiomeProvider.getBiome(StandardBiomeProvider.java:53)
	at com.dfsek.terra.fabric.generation.TerraBiomeSource.method_16359(TerraBiomeSource.java:56)
	at net.minecraft.class_3218.method_22387(class_3218.java:236)
	at net.minecraft.class_4538.method_16359(class_4538.java:67)
	at net.minecraft.class_4543$class_4544.method_31609(class_4543.java:61)
	at net.minecraft.class_4543.method_31608(class_4543.java:54)
	at net.minecraft.class_3195.method_14015(class_3195.java:195)
	at net.minecraft.class_2794.method_12103(class_2794.java:227)
	at com.dfsek.terra.fabric.generation.FabricChunkGeneratorWrapper.method_12103(FabricChunkGeneratorWrapper.java:122)
	at net.minecraft.class_3218.method_8487(class_3218.java:1044)
	at net.minecraft.class_3079.method_13457(class_3079.java:39)
	at net.minecraft.class_3079.method_29192(class_3079.java:31)
	at net.minecraft.class_3079$$Lambda$3732/0x000000080162d3c0.run(Unknown Source)
	at com.mojang.brigadier.CommandDispatcher.execute(CommandDispatcher.java:263)
	at com.mojang.brigadier.CommandDispatcher.execute(CommandDispatcher.java:177)
	at net.minecraft.class_2170.method_9249(class_2170.java:251)
	at net.minecraft.class_3244.method_14370(class_3244.java:1239)
	at net.minecraft.class_3244.method_31286(class_3244.java:1223)
	at net.minecraft.class_3244.method_12048(class_3244.java:1206)
	at net.minecraft.class_2797.method_12115(class_2797.java:30)
	at net.minecraft.class_2797.method_11054(class_2797.java:7)
	at net.minecraft.class_2600.method_11072(class_2600.java:21)
	at net.minecraft.class_2600$$Lambda$5168/0x00000008019a8400.run(Unknown Source)
	at net.minecraft.class_3738.run(class_3738.java:18)
	at net.minecraft.class_1255.method_18859(class_1255.java:151)
	at net.minecraft.class_4093.method_18859(class_4093.java:23)
	at net.minecraft.server.MinecraftServer.method_24306(MinecraftServer.java:783)
	at net.minecraft.server.MinecraftServer.method_18859(MinecraftServer.java:167)
	at net.minecraft.class_1255.method_16075(class_1255.java:125)
	at net.minecraft.server.MinecraftServer.method_20415(MinecraftServer.java:765)
	at net.minecraft.server.MinecraftServer.method_16075(MinecraftServer.java:759)
	at net.minecraft.class_1255.method_18857(class_1255.java:134)
	at net.minecraft.server.MinecraftServer.method_16208(MinecraftServer.java:744)
	at net.minecraft.server.MinecraftServer.method_29741(MinecraftServer.java:696)
	at net.minecraft.server.MinecraftServer.method_29739(MinecraftServer.java:274)

-- Thread Dump --
Details:
	Threads: "Reference Handler" daemon prio=10 Id=2 RUNNABLE
	at [email protected]/java.lang.ref.Reference.waitForReferencePendingList(Native Method)
	at [email protected]/java.lang.ref.Reference.processPendingReferences(Reference.java:243)
	at [email protected]/java.lang.ref.Reference$ReferenceHandler.run(Reference.java:215)


"Finalizer" daemon prio=8 Id=3 WAITING on java.lang.ref.ReferenceQueue$Lock@6f521ed9
	at [email protected]/java.lang.Object.wait(Native Method)
	-  waiting on java.lang.ref.ReferenceQueue$Lock@6f521ed9
	at [email protected]/java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:155)
	at [email protected]/java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:176)
	at [email protected]/java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:171)


"Signal Dispatcher" daemon prio=9 Id=4 RUNNABLE


"Notification Thread" daemon prio=9 Id=11 RUNNABLE


"Common-Cleaner" daemon prio=8 Id=12 TIMED_WAITING on java.lang.ref.ReferenceQueue$Lock@6195fd43
	at [email protected]/java.lang.Object.wait(Native Method)
	-  waiting on java.lang.ref.ReferenceQueue$Lock@6195fd43
	at [email protected]/java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:155)
	at [email protected]/jdk.internal.ref.CleanerImpl.run(CleanerImpl.java:140)
	at [email protected]/java.lang.Thread.run(Thread.java:831)
	at [email protected]/jdk.internal.misc.InnocuousThread.run(InnocuousThread.java:134)


"Worker-Bootstrap-5" daemon prio=5 Id=77 WAITING on java.util.concurrent.ForkJoinPool@65aa75a9
	at [email protected]/jdk.internal.misc.Unsafe.park(Native Method)
	-  waiting on java.util.concurrent.ForkJoinPool@65aa75a9
	at [email protected]/java.util.concurrent.locks.LockSupport.park(LockSupport.java:211)
	at [email protected]/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1633)
	at [email protected]/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:183)


"Timer hack thread" daemon prio=5 Id=78 TIMED_WAITING
	at [email protected]/java.lang.Thread.sleep(Native Method)
	at net.minecraft.class_156$6.run(class_156.java:714)


"Worker-Main-7" daemon prio=5 Id=80 TIMED_WAITING on java.util.concurrent.ForkJoinPool@20a8f778
	at [email protected]/jdk.internal.misc.Unsafe.park(Native Method)
	-  waiting on java.util.concurrent.ForkJoinPool@20a8f778
	at [email protected]/java.util.concurrent.locks.LockSupport.parkUntil(LockSupport.java:293)
	at [email protected]/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1624)
	at [email protected]/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:183)


"Worker-Main-8" daemon prio=5 Id=81 WAITING on java.util.concurrent.ForkJoinPool@20a8f778
	at [email protected]/jdk.internal.misc.Unsafe.park(Native Method)
	-  waiting on java.util.concurrent.ForkJoinPool@20a8f778
	at [email protected]/java.util.concurrent.locks.LockSupport.park(LockSupport.java:211)
	at [email protected]/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1633)
	at [email protected]/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:183)


"Worker-Main-9" daemon prio=5 Id=82 TIMED_WAITING on java.util.concurrent.ForkJoinPool@20a8f778
	at [email protected]/jdk.internal.misc.Unsafe.park(Native Method)
	-  waiting on java.util.concurrent.ForkJoinPool@20a8f778
	at [email protected]/java.util.concurrent.locks.LockSupport.parkUntil(LockSupport.java:293)
	at [email protected]/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1624)
	at [email protected]/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:183)


"Worker-Main-10" daemon prio=5 Id=83 WAITING on java.util.concurrent.ForkJoinPool@20a8f778
	at [email protected]/jdk.internal.misc.Unsafe.park(Native Method)
	-  waiting on java.util.concurrent.ForkJoinPool@20a8f778
	at [email protected]/java.util.concurrent.locks.LockSupport.park(LockSupport.java:211)
	at [email protected]/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1633)
	at [email protected]/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:183)


"Snooper Timer" daemon prio=5 Id=85 WAITING on java.util.TaskQueue@5f738162
	at [email protected]/java.lang.Object.wait(Native Method)
	-  waiting on java.util.TaskQueue@5f738162
	at [email protected]/java.lang.Object.wait(Object.java:320)
	at [email protected]/java.util.TimerThread.mainLoop(Timer.java:527)
	at [email protected]/java.util.TimerThread.run(Timer.java:506)


"AppKit Thread" daemon prio=5 Id=86 RUNNABLE (in native)


"AWT-Shutdown" prio=5 Id=87 WAITING on java.lang.Object@11c2102a
	at [email protected]/java.lang.Object.wait(Native Method)
	-  waiting on java.lang.Object@11c2102a
	at [email protected]/java.lang.Object.wait(Object.java:320)
	at [email protected]/sun.awt.AWTAutoShutdown.run(AWTAutoShutdown.java:291)
	at [email protected]/java.lang.Thread.run(Thread.java:831)


"Java2D Queue Flusher" daemon prio=10 Id=88 TIMED_WAITING on sun.java2d.opengl.OGLRenderQueue$QueueFlusher@27f33886
	at [email protected]/java.lang.Object.wait(Native Method)
	-  waiting on sun.java2d.opengl.OGLRenderQueue$QueueFlusher@27f33886
	at [email protected]/sun.java2d.opengl.OGLRenderQueue$QueueFlusher.run(OGLRenderQueue.java:205)
	at [email protected]/java.lang.Thread.run(Thread.java:831)


"Java2D Disposer" daemon prio=10 Id=89 WAITING on java.lang.ref.ReferenceQueue$Lock@40870837
	at [email protected]/java.lang.Object.wait(Native Method)
	-  waiting on java.lang.ref.ReferenceQueue$Lock@40870837
	at [email protected]/java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:155)
	at [email protected]/java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:176)
	at [email protected]/sun.java2d.Disposer.run(Disposer.java:144)
	at [email protected]/java.lang.Thread.run(Thread.java:831)


"AWT-EventQueue-0" prio=6 Id=90 WAITING on java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@33cf9d4
	at [email protected]/jdk.internal.misc.Unsafe.park(Native Method)
	-  waiting on java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@33cf9d4
	at [email protected]/java.util.concurrent.locks.LockSupport.park(LockSupport.java:341)
	at [email protected]/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionNode.block(AbstractQueuedSynchronizer.java:505)
	at [email protected]/java.util.concurrent.ForkJoinPool.managedBlock(ForkJoinPool.java:3137)
	at [email protected]/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:1614)
	at [email protected]/java.awt.EventQueue.getNextEvent(EventQueue.java:566)
	at [email protected]/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:190)
	at [email protected]/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124)
	...


"TimerQueue" daemon prio=5 Id=92 TIMED_WAITING on java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@3cf7d508
	at [email protected]/jdk.internal.misc.Unsafe.park(Native Method)
	-  waiting on java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@3cf7d508
	at [email protected]/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:252)
	at [email protected]/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:1661)
	at [email protected]/java.util.concurrent.DelayQueue.take(DelayQueue.java:229)
	at [email protected]/javax.swing.TimerQueue.run(TimerQueue.java:171)
	at [email protected]/java.lang.Thread.run(Thread.java:831)

	Number of locked synchronizers = 1
	- java.util.concurrent.locks.ReentrantLock$NonfairSync@2fefad9


"Server thread" prio=5 Id=84 RUNNABLE
	at com.dfsek.terra.api.world.biome.pipeline.TerraBiomeHolder.mutate(TerraBiomeHolder.java:56)
	at com.dfsek.terra.api.world.biome.pipeline.stages.MutatorStage.apply(MutatorStage.java:20)
	at com.dfsek.terra.api.world.biome.pipeline.BiomePipeline.getBiomes(BiomePipeline.java:35)
	at com.dfsek.terra.api.world.biome.provider.StandardBiomeProvider$1.load(StandardBiomeProvider.java:34)
	at com.dfsek.terra.api.world.biome.provider.StandardBiomeProvider$1.load(StandardBiomeProvider.java:31)
	at com.google.common.cache.LocalCache$LoadingValueReference.loadFuture(LocalCache.java:3716)
	at com.google.common.cache.LocalCache$Segment.loadSync(LocalCache.java:2424)
	at com.google.common.cache.LocalCache$Segment.lockedGetOrLoad(LocalCache.java:2298)
	-  locked com.google.common.cache.LocalCache$StrongAccessEntry@44c9b411
	...


"DestroyJavaVM" prio=5 Id=95 RUNNABLE


"ObjectCleanerThread" daemon prio=1 Id=96 TIMED_WAITING on java.lang.ref.ReferenceQueue$Lock@20df1705
	at [email protected]/java.lang.Object.wait(Native Method)
	-  waiting on java.lang.ref.ReferenceQueue$Lock@20df1705
	at [email protected]/java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:155)
	at io.netty.util.internal.ObjectCleaner$1.run(ObjectCleaner.java:54)
	at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
	at [email protected]/java.lang.Thread.run(Thread.java:831)


"Netty Server IO #0" daemon prio=5 Id=97 RUNNABLE
	at [email protected]/sun.nio.ch.KQueue.poll(Native Method)
	at [email protected]/sun.nio.ch.KQueueSelectorImpl.doSelect(KQueueSelectorImpl.java:122)
	at [email protected]/sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:129)
	-  locked sun.nio.ch.Util$2@558219f5
	-  locked sun.nio.ch.KQueueSelectorImpl@57dfc9d8
	at [email protected]/sun.nio.ch.SelectorImpl.select(SelectorImpl.java:141)
	at io.netty.channel.nio.NioEventLoop.select(NioEventLoop.java:756)
	at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:411)
	at io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:884)
	at [email protected]/java.lang.Thread.run(Thread.java:831)


"Netty Server IO #1" daemon prio=5 Id=100 RUNNABLE (in native)
	at [email protected]/sun.nio.ch.KQueue.poll(Native Method)
	at [email protected]/sun.nio.ch.KQueueSelectorImpl.doSelect(KQueueSelectorImpl.java:122)
	at [email protected]/sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:129)
	-  locked sun.nio.ch.Util$2@5ebf860e
	-  locked sun.nio.ch.KQueueSelectorImpl@680c5e3
	at [email protected]/sun.nio.ch.SelectorImpl.select(SelectorImpl.java:141)
	at io.netty.channel.nio.NioEventLoop.select(NioEventLoop.java:756)
	at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:411)
	at io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:884)
	at [email protected]/java.lang.Thread.run(Thread.java:831)


"Netty Server IO #2" daemon prio=5 Id=101 RUNNABLE
	at [email protected]/sun.nio.ch.KQueue.poll(Native Method)
	at [email protected]/sun.nio.ch.KQueueSelectorImpl.doSelect(KQueueSelectorImpl.java:122)
	at [email protected]/sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:129)
	-  locked sun.nio.ch.Util$2@43082977
	-  locked sun.nio.ch.KQueueSelectorImpl@6ab0b9c7
	at [email protected]/sun.nio.ch.SelectorImpl.select(SelectorImpl.java:141)
	at io.netty.channel.nio.NioEventLoop.select(NioEventLoop.java:756)
	at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:411)
	at io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:884)
	at [email protected]/java.lang.Thread.run(Thread.java:831)


"Netty Server IO #3" daemon prio=5 Id=102 RUNNABLE (in native)
	at [email protected]/sun.nio.ch.KQueue.poll(Native Method)
	at [email protected]/sun.nio.ch.KQueueSelectorImpl.doSelect(KQueueSelectorImpl.java:122)
	at [email protected]/sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:129)
	-  locked sun.nio.ch.Util$2@481dcd69
	-  locked sun.nio.ch.KQueueSelectorImpl@4832b654
	at [email protected]/sun.nio.ch.SelectorImpl.select(SelectorImpl.java:141)
	at io.netty.channel.nio.NioEventLoop.select(NioEventLoop.java:756)
	at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:411)
	at io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:884)
	at [email protected]/java.lang.Thread.run(Thread.java:831)


"Netty Server IO #4" daemon prio=5 Id=103 RUNNABLE
	at [email protected]/sun.nio.ch.KQueue.poll(Native Method)
	at [email protected]/sun.nio.ch.KQueueSelectorImpl.doSelect(KQueueSelectorImpl.java:122)
	at [email protected]/sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:129)
	-  locked sun.nio.ch.Util$2@4a737db4
	-  locked sun.nio.ch.KQueueSelectorImpl@25e29bbc
	at [email protected]/sun.nio.ch.SelectorImpl.select(SelectorImpl.java:141)
	at io.netty.channel.nio.NioEventLoop.select(NioEventLoop.java:756)
	at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:411)
	at io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:884)
	at [email protected]/java.lang.Thread.run(Thread.java:831)


"Server Watchdog" daemon prio=5 Id=105 RUNNABLE
	at [email protected]/sun.management.ThreadImpl.dumpThreads0(Native Method)
	at [email protected]/sun.management.ThreadImpl.dumpAllThreads(ThreadImpl.java:521)
	at [email protected]/sun.management.ThreadImpl.dumpAllThreads(ThreadImpl.java:509)
	at net.minecraft.class_3178.run(class_3178.java:49)
	at [email protected]/java.lang.Thread.run(Thread.java:831)


"Netty Server IO #5" daemon prio=5 Id=106 RUNNABLE (in native)
	at [email protected]/sun.nio.ch.KQueue.poll(Native Method)
	at [email protected]/sun.nio.ch.KQueueSelectorImpl.doSelect(KQueueSelectorImpl.java:122)
	at [email protected]/sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:129)
	-  locked sun.nio.ch.Util$2@3326cec
	-  locked sun.nio.ch.KQueueSelectorImpl@5eefeac8
	at [email protected]/sun.nio.ch.SelectorImpl.select(SelectorImpl.java:141)
	at io.netty.channel.nio.NioEventLoop.select(NioEventLoop.java:756)
	at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:411)
	at io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:884)
	at [email protected]/java.lang.Thread.run(Thread.java:831)


"Netty Server IO #6" daemon prio=5 Id=107 RUNNABLE (in native)
	at [email protected]/sun.nio.ch.KQueue.poll(Native Method)
	at [email protected]/sun.nio.ch.KQueueSelectorImpl.doSelect(KQueueSelectorImpl.java:122)
	at [email protected]/sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:129)
	-  locked sun.nio.ch.Util$2@f20b27c
	-  locked sun.nio.ch.KQueueSelectorImpl@3e2ee75f
	at [email protected]/sun.nio.ch.SelectorImpl.select(SelectorImpl.java:141)
	at io.netty.channel.nio.NioEventLoop.select(NioEventLoop.java:756)
	at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:411)
	at io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:884)
	at [email protected]/java.lang.Thread.run(Thread.java:831)


"Netty Server IO #7" daemon prio=5 Id=108 RUNNABLE
	at [email protected]/sun.nio.ch.KQueue.poll(Native Method)
	at [email protected]/sun.nio.ch.KQueueSelectorImpl.doSelect(KQueueSelectorImpl.java:122)
	at [email protected]/sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:129)
	-  locked sun.nio.ch.Util$2@2e6ba97a
	-  locked sun.nio.ch.KQueueSelectorImpl@f73afd5
	at [email protected]/sun.nio.ch.SelectorImpl.select(SelectorImpl.java:141)
	at io.netty.channel.nio.NioEventLoop.select(NioEventLoop.java:756)
	at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:411)
	at io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:884)
	at [email protected]/java.lang.Thread.run(Thread.java:831)


"Worker-Main-15" daemon prio=5 Id=113 WAITING on java.util.concurrent.ForkJoinPool@20a8f778
	at [email protected]/jdk.internal.misc.Unsafe.park(Native Method)
	-  waiting on java.util.concurrent.ForkJoinPool@20a8f778
	at [email protected]/java.util.concurrent.locks.LockSupport.park(LockSupport.java:211)
	at [email protected]/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1633)
	at [email protected]/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:183)


"IO-Worker-16" prio=5 Id=114 TIMED_WAITING on java.util.concurrent.SynchronousQueue$TransferStack@54a4f15
	at [email protected]/jdk.internal.misc.Unsafe.park(Native Method)
	-  waiting on java.util.concurrent.SynchronousQueue$TransferStack@54a4f15
	at [email protected]/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:252)
	at [email protected]/java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:462)
	at [email protected]/java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:361)
	at [email protected]/java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:937)
	at [email protected]/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1055)
	at [email protected]/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1116)
	at [email protected]/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:630)
	...


"IO-Worker-17" prio=5 Id=115 TIMED_WAITING on java.util.concurrent.SynchronousQueue$TransferStack@54a4f15
	at [email protected]/jdk.internal.misc.Unsafe.park(Native Method)
	-  waiting on java.util.concurrent.SynchronousQueue$TransferStack@54a4f15
	at [email protected]/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:252)
	at [email protected]/java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:462)
	at [email protected]/java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:361)
	at [email protected]/java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:937)
	at [email protected]/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1055)
	at [email protected]/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1116)
	at [email protected]/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:630)
	...



Stacktrace:
	at net.minecraft.class_3178.run(class_3178.java:65)
	at java.base/java.lang.Thread.run(Thread.java:831)

-- Performance stats --
Details:
	Random tick rate: 3
	Level stats: ResourceKey[minecraft:dimension / minecraft:overworld]: players: 1, entities: 138,138,80,838,838,0,0 [minecraft:creeper:24,minecraft:zombie:20,minecraft:bat:17,minecraft:skeleton:16,minecraft:sheep:11], block_entities: 5 [minecraft:mob_spawner:5], block_ticks: 0, fluid_ticks: 1, chunk_source: Chunks[S] W: 23322 E: 138,138,80,838,838,0,0,
ResourceKey[minecraft:dimension / minecraft:the_nether]: players: 0, entities: 0,0,0,0,0,0,0 [], block_entities: 0 [], block_ticks: 0, fluid_ticks: 0, chunk_source: Chunks[S] W: 0 E: 0,0,0,0,0,0,0,
ResourceKey[minecraft:dimension / minecraft:the_end]: players: 0, entities: 0,0,0,0,0,0,0 [], block_entities: 0 [], block_ticks: 0, fluid_ticks: 0, chunk_source: Chunks[S] W: 0 E: 0,0,0,0,0,0,0

-- System Details --
Details:
	Minecraft Version: 1.17
	Minecraft Version ID: 1.17
	Operating System: Mac OS X (x86_64) version 10.14.6
	Java Version: 16.0.1, Oracle Corporation
	Java VM Version: Java HotSpot(TM) 64-Bit Server VM (mixed mode, sharing), Oracle Corporation
	Memory: 2168882264 bytes (2068 MiB) / 3424649216 bytes (3266 MiB) up to 4294967296 bytes (4096 MiB)
	CPUs: 6
	Processor Vendor: GenuineIntel
	Processor Name: Intel(R) Core(TM) i5-8600K CPU @ 3.60GHz
	Identifier: Intel64 Family 6 Model 158 Stepping 10
	Microarchitecture: Coffee Lake
	Frequency (GHz): 3.60
	Number of physical packages: 1
	Number of physical CPUs: 6
	Number of logical CPUs: 6
	Graphics card #0 name: Radeon RX Vega 56
	Graphics card #0 vendor: AMD (0x1002)
	Graphics card #0 VRAM (MB): 8192.00
	Graphics card #0 deviceId: 0x687f
	Graphics card #0 versionInfo: Revision ID: 0x00c3
	Memory slot #0 capacity (MB): 0.00
	Memory slot #0 clockSpeed (GHz): -0.00
	Memory slot #0 type: Empty
	Memory slot #1 capacity (MB): 0.00
	Memory slot #1 clockSpeed (GHz): -0.00
	Memory slot #1 type: Empty
	Memory slot #2 capacity (MB): 8192.00
	Memory slot #2 clockSpeed (GHz): 3.20
	Memory slot #2 type: DDR4
	Memory slot #3 capacity (MB): 8192.00
	Memory slot #3 clockSpeed (GHz): 3.20
	Memory slot #3 type: DDR4
	Virtual memory max (MB): 18432.00
	Virtual memory used (MB): 11133.89
	Swap memory total (MB): 2048.00
	Swap memory used (MB): 676.25
	JVM Flags: 0 total; 
	Fabric Mods: 
		fabric: Fabric API 0.34.9+1.17
		fabric-api-base: Fabric API Base 0.3.0+a02b4463d5
		fabric-api-lookup-api-v1: Fabric API Lookup API (v1) 1.0.2+a02b4463d5
		fabric-biome-api-v1: Fabric Biome API (v1) 3.1.11+9e521e13d5
		fabric-command-api-v1: Fabric Command API (v1) 1.1.1+a02b4463d5
		fabric-commands-v0: Fabric Commands (v0) 0.2.2+92519afad5
		fabric-containers-v0: Fabric Containers (v0) 0.1.12+a02b4463d5
		fabric-content-registries-v0: Fabric Content Registries (v0) 0.2.2+a02b4463d5
		fabric-crash-report-info-v1: Fabric Crash Report Info (v1) 0.1.5+be9da310d5
		fabric-dimensions-v1: Fabric Dimensions API (v1) 2.0.10+a02b4463d5
		fabric-entity-events-v1: Fabric Entity Events (v1) 1.1.0+a02b4463d5
		fabric-events-interaction-v0: Fabric Events Interaction (v0) 0.4.8+a02b4463d5
		fabric-events-lifecycle-v0: Fabric Events Lifecycle (v0) 0.2.1+92519afad5
		fabric-game-rule-api-v1: Fabric Game Rule API (v1) 1.0.6+a02b4463d5
		fabric-item-api-v1: Fabric Item API (v1) 1.2.4+a02b4463d5
		fabric-item-groups-v0: Fabric Item Groups (v0) 0.2.10+b7ab6121d5
		fabric-lifecycle-events-v1: Fabric Lifecycle Events (v1) 1.4.4+a02b4463d5
		fabric-loot-tables-v1: Fabric Loot Tables (v1) 1.0.4+a02b4463d5
		fabric-mining-levels-v0: Fabric Mining Levels (v0) 0.1.3+92519afad5
		fabric-networking-api-v1: Fabric Networking API (v1) 1.0.11+b7ab6121d5
		fabric-networking-blockentity-v0: Fabric Networking Block Entity (v0) 0.2.11+a02b4463d5
		fabric-networking-v0: Fabric Networking (v0) 0.3.2+92519afad5
		fabric-object-builder-api-v1: Fabric Object Builder API (v1) 1.10.9+b7ab6121d5
		fabric-object-builders-v0: Fabric Object Builders (v0) 0.7.3+a02b4463d5
		fabric-particles-v1: Fabric Particles (v1) 0.2.4+a02b4463d5
		fabric-registry-sync-v0: Fabric Registry Sync (v0) 0.7.9+a02b4463d5
		fabric-rendering-data-attachment-v1: Fabric Rendering Data Attachment (v1) 0.1.5+a02b4463d5
		fabric-resource-loader-v0: Fabric Resource Loader (v0) 0.4.7+b7ab6121d5
		fabric-screen-handler-api-v1: Fabric Screen Handler API (v1) 1.1.8+a02b4463d5
		fabric-structure-api-v1: Fabric Structure API (v1) 1.1.10+be9da310d5
		fabric-tag-extensions-v0: Fabric Tag Extensions (v0) 1.1.4+a02b4463d5
		fabric-tool-attribute-api-v1: Fabric Tool Attribute API (v1) 1.2.12+b7ab6121d5
		fabricloader: Fabric Loader 0.11.3
		java: Java HotSpot(TM) 64-Bit Server VM 16
		minecraft: Minecraft 1.17
		terra: Terra 5.3.3-BETA+db70b6c8
	Player Count: 1 / 20; [class_3222['CrashingBrain'/37, l='ServerLevel[world]', x=34.34, y=118.70, z=7.56]]
	Data Packs: vanilla, Fabric Mods
	Is Modded: Definitely; Server brand changed to 'fabric'
	Type: Dedicated Server (map_server.txt)
[latest.log](https://github.com/PolyhedralDev/Terra/files/6619933/latest.log)

Additional details

This may be linked to my previous issue #203

commented

We override Vanilla structures by default, of course the Vanilla locate command doesn't work. If you want to use Vanilla locate, use Vanilla structures.

commented

I know I should use the te structure locate command
I was testing if issue #203 was solved in this version.
The problem is this still crashes the server and any (op) user could end up crashing the server accidentally

commented

there's nothing we can do about it

commented

Well, we could mixin to the Vanilla locate code and tamper with it. But that's none of our business to do.

commented

I'll try that if it at least avoids (not fix) the issue.
I still believe it's a critical bug that causes unexpected crash of the whole server if someone is unaware of this

commented

Again, there is nothing we can do to fix it. We could mixin into the code and change shit around, but we really shouldn't.

commented

Taking the structure locations out of the pack did not change anything.
I guess I understand what you mean. I never tried to write mods for minecraft so I have just a vague idea of how these interactions work. Plus, yesterday I was looking at the codebase, reverse engineering the error stack trace, but yeah, I didn't see where this could be changed.

I think the minimum you could do is put somewhere a BIG red warning for the server admins that using these commands WILL crash the server