Skip to content

Game fully freezes / tick stall, looks like it's from the POI landmark handler blocking on chunk load #147

Description

@luxrayrocks1127

Game keeps crashing when i enable the Landmarks/POI system, claude says this
":
A worker thread was stuck inside Surveyor's code, waiting on a chunk to load:

"Worker-Main-1" daemon WAITING on CompletableFuture$Signaller
	at ServerChunkCache.getChunkOffThread
	at ServerChunkCache.getChunk
	at Level.getChunk
	at Level.getBlockState
	at folk.sisby.surveyor.landmark.component.LandmarkComponentTypes.forBlock(LandmarkComponentTypes.java:47)
	at ServerLevel.surveyor$lambda$onPointOfInterestAdded$0
	at folk.sisby.surveyor.landmark.Landmark.create(Landmark.java:29)
	at folk.sisby.surveyor.landmark.Landmark.global(Landmark.java:33)
	at ServerLevel.surveyor$onPointOfInterestAdded

And at the same time, the main server thread was stuck waiting on chunk loading too:

"Server thread" TIMED_WAITING
	at BlockableEventLoop.waitForTasks
	at ServerChunkCache.getChunkBlocking
	at ServerChunkCache.getChunk

So it looks like LandmarkComponentTypes.forBlock calls getBlockState, which (if the chunk isn't loaded yet) ends up blocking/joining on a chunk load from inside the onPointOfInterestAdded callback. Problem is, that chunk load needs the main server thread to process it, and the main server thread was itself sitting there waiting on chunk loading — so everything just locks up until the watchdog notices.
"

Minecraft 26.1.2, Fabric Loader 0.19.3
Surveyor version: 1.2.4+26.1
Big modpack, also running Lithium/ModernFix/Ksyxis/Noisium if that matters

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions