We’re getting a crash when cooking our game when updating to unreal 5.6. We’re using a custom engine build, though with fairly minimal modifications, so I am not currently aware how to reproduce this issue with a vanilla build.
The crash occurs due to GUnreachableObjects containing null entries during garbage collection in the cook process. When the crash happens in the project there always appear to be two entries in GUnreachableObject, both containing null pointers. Could you help us in the right direction with what might trigger an issue like this, and how to go about debugging it?
[Image Removed]
These are the logged lines in the time just before the crash:
```
[2025.06.17-13.50.17:818][ 0]LogWorldPartition: Display: [Cook] Sending 186 packages to be generated.
[2025.06.17-13.50.17:819][ 0]LogWorldPartition: Display: [Cook] Debug(GetGenerateList) : OwnerObject=World /Game/Maps/PerformanceTests/Performance/MAP_Battlefield_FormationLODSwitching_1000.MAP_Battlefield_FormationLODSwitching_1000 bForceInitializedWorld=1 bInitializedPhysicsSceneForSave=1
[2025.06.17-13.50.17:845][ 0]LogCook: Display: Splitting Package /Game/Maps/PerformanceTests/Performance/MAP_Battlefield_FormationLODSwitching_1000 with splitter FWorldPartitionCookPackageSplitter acting on object World /Game/Maps/PerformanceTests/Performance/MAP_Battlefield_FormationLODSwitching_1000.MAP_Battlefield_FormationLODSwitching_1000.
[2025.06.17-13.50.17:857][ 0]LogWorldPartition: Display: [Cook][PopulateGeneratorPackage] Processing 186 packages
[2025.06.17-13.50.18:243][ 0]LogWorldPartition: Display: [Cook][PopulateGeneratorPackage] Gathered 18 modified packages
[2025.06.17-13.50.50:847][ 0]LogCook: Display: Garbage collection triggered (Full). Triggered by conditions:
CookSettings.MemoryMinFreeVirtual: Available virtual memory 1658MiB is less than 2048MiB.
[2025.06.17-13.50.50:847][ 0]LogCook: Display: Cooked packages 670 Packages Remain 11539 Total 12209
[2025.06.17-13.50.50:848][ 0]LogCook: Display: Cook Diagnostics: OpenFileHandles=3022, VirtualMemory=36160MiB, VirtualMemoryAvailable=1658MiB
[2025.06.17-13.50.50:848][ 0]LogCookCommandlet: Display: GarbageCollection… (Exceeded Max Memory)
[2025.06.17-13.50.51:756][ 0]LogUObjectHash: Compacting FUObjectHashTables data took 14.49ms
[2025.06.17-13.50.51:815][ 0]LogActorComponent: UnregisterComponent: (/Game/Maps/PlayableInstance/Battlefield/MAP_YmirBattlefieldTest_01.MAP_YmirBattlefieldTest_01:PersistentLevel.StaticMeshActor_UAID_D843AEDFB27FC67002_2128923619.RoadWaypointComponent0) Not registered. Aborting.
[2025.06.17-13.50.51:815][ 0]LogActorComponent: UnregisterComponent: (/Game/Maps/PlayableInstance/Battlefield/MAP_YmirBattlefieldTest_01.MAP_YmirBattlefieldTest_01:PersistentLevel.StaticMeshActor_UAID_E89C25C21D86446C02_1865376513.RoadWaypointComponent1) Not registered. Aborting.
[2025.06.17-13.50.51:818][ 0]LogOutputDevice: Warning:
Script Stack (0 frames) :
Assertion failed: ObjectItem [File:D:\p4\ue_integration\Engine\Source\Runtime\CoreUObject\Private\UObject\GarbageCollection.cpp] [Line: 4764]
A breakpoint instruction (__debugbreak() statement or a similar call) was executed in UnrealEditor-Win64-Debug.exe.
```