Skip to content

Datafixer (DFU) runs during chunk/structure deserialization and hangs the server on Integrated Dungeons & Structures NBT (NeoForge 1.21.1, 4.4.2) #140

Description

@bailboy101

Environment

Minecraft 1.21.1, NeoForge 21.1.233
Brewin' And Chewin' 4.4.2+1.21.1 (NeoForge) — latest available build
Sinytra Connector 2.0.0-beta.14 present
Conflicting mod: Integrated Dungeons and Structures (idas 1.13.7) / integrated_api 1.7.3
Java 21.0.6

Summary

B&C's DataFixerUpper fixer (introduced in 3.2.0, per changelog used for renaming scarlet_pierogies) appears to be registered against a data type that also gets invoked during chunk deserialization of saved structure pieces. When a chunk containing an IDAS structure template is loaded, the read is routed through BnCDataFixer.updateWithFixers, which performs a full read-and-rewrite of the structure NBT and hangs (or runs pathologically slowly). The chunk never finishes loading; under a forced synchronous load (e.g. a player teleporting in) the server watchdog kills the server with a multi-second/"60368720 seconds" single-tick stall.
Steps to reproduce

World with IDAS structures generated.
Load (or teleport into) a chunk containing an IDAS structure piece.
Server hangs in the datafixer; watchdog fires, or the chunk silently fails to load.

Removing B&C resolves it. Re-adding B&C reintroduces the hang on still-unread IDAS structure chunks, confirming B&C is the trigger. The conflict requires both B&C's datafixer and IDAS structure NBT present.
Relevant stack trace (abridged)
java.lang.Error: ServerHangWatchdog detected that a single server tick took ... seconds
at net.minecraft.nbt.CompoundTag.shallowCopy
...
at com.mojang.datafixers.DataFixerUpper.update
at umpaz.brewinandchewin.common.utility.dfu.BnCDataFixer.updateWithFixers(BnCDataFixer.java:59)
at net.minecraft.util.datafix.DataFixTypes...update (via brewinandchewin DataFixTypesMixin)
at ...StructureTemplateManager.readStructure
at com.craisinlord.integrated_api.world.structures.pieces.IASinglePoolElement.getTemplate
at ...ChunkSerializer.read
at ...ServerPlayer.teleportTo (FTB Chunks map teleport)

crash-2026-06-14_00.22.36-server.txt

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions