Crashing with various errors in open world map

Sorry if this is in the wrong section or anything.

I’ve been working on a driving game and using World Partition for the map. However, over the last week or so I’ve had constant crashes when running the game. It is usually:

Signal 11 caught.
Malloc Size=262146 LargeMemoryPoolOffset=262162 
CommonUnixCrashHandler: Signal=11
[2024.04.23-20.47.02:230][583]LogCore: === Critical error: ===
Unhandled Exception: SIGSEGV: invalid attempt to read memory at address 0x0000000000000000

[2024.04.23-20.47.02:230][583]LogCore: Fatal error!

0x0000793ee7385241 libc.so.6!UnknownFunction(0x157241)
0x0000793eeea83125 libUnrealEditor-Engine.so!FMaterialLayersFunctionsEditorOnlyData::operator=(FMaterialLayersFunctionsEditorOnlyData const&) [/mnt/horde/++UE5/Sync/Engine/Source/Runtime/Engine/Classes/Materials/MaterialLayersFunctions.h:55]
0x0000793eeeb24adb libUnrealEditor-Engine.so!FStaticParameterSetEditorOnlyData::operator=(FStaticParameterSetEditorOnlyData const&) [/mnt/horde/++UE5/Sync/Engine/Source/Runtime/Engine/Public/StaticParameterSet.h:423]
0x0000793ef00a8acd libUnrealEditor-Engine.so!UMaterialInstance::GetStaticParameters() const [/mnt/horde/++UE5/Sync/Engine/Source/./Runtime/Engine/Private/Materials/MaterialInstance.cpp:4659]
0x0000793ef00c7401 libUnrealEditor-Engine.so!UMaterialInstanceConstant::UpdateCachedData() [/mnt/horde/++UE5/Sync/Engine/Source/./Runtime/Engine/Private/Materials/MaterialInstanceConstant.cpp:202]
0x0000793ef00b9036 libUnrealEditor-Engine.so!UMaterialInstance::PostLoad() [/mnt/horde/++UE5/Sync/Engine/Source/./Runtime/Engine/Private/Materials/MaterialInstance.cpp:3163]
0x0000793ef00c6f22 libUnrealEditor-Engine.so!UMaterialInstanceConstant::PostLoad() [/mnt/horde/++UE5/Sync/Engine/Source/./Runtime/Engine/Private/Materials/MaterialInstanceConstant.cpp:33]
0x0000793ee68b74a9 libUnrealEditor-Landscape.so!ULandscapeMaterialInstanceConstant::PostLoad() [/mnt/horde/++UE5/Sync/Engine/Source/./Runtime/Landscape/Private/LandscapeRender.cpp:3713]
0x0000793ef29d46f3 libUnrealEditor-CoreUObject.so!UObject::ConditionalPostLoad() [/mnt/horde/++UE5/Sync/Engine/Source/./Runtime/CoreUObject/Private/UObject/Obj.cpp:1306]
0x0000793ef00b8d9f libUnrealEditor-Engine.so!UMaterialInstance::PostLoad() [/mnt/horde/++UE5/Sync/Engine/Source/./Runtime/Engine/Private/Materials/MaterialInstance.cpp:3081]
0x0000793ef00c6f22 libUnrealEditor-Engine.so!UMaterialInstanceConstant::PostLoad() [/mnt/horde/++UE5/Sync/Engine/Source/./Runtime/Engine/Private/Materials/MaterialInstanceConstant.cpp:33]
0x0000793ee68b74a9 libUnrealEditor-Landscape.so!ULandscapeMaterialInstanceConstant::PostLoad() [/mnt/horde/++UE5/Sync/Engine/Source/./Runtime/Landscape/Private/LandscapeRender.cpp:3713]
0x0000793ef29d46f3 libUnrealEditor-CoreUObject.so!UObject::ConditionalPostLoad() [/mnt/horde/++UE5/Sync/Engine/Source/./Runtime/CoreUObject/Private/UObject/Obj.cpp:1306]
0x0000793ef2647b43 libUnrealEditor-CoreUObject.so!FAsyncPackage::PostLoadDeferredObjects(double, bool, double) [/mnt/horde/++UE5/Sync/Engine/Source/./Runtime/CoreUObject/Private/Serialization/AsyncLoading.cpp:7044]
0x0000793ef2644ed3 libUnrealEditor-CoreUObject.so!FAsyncLoadingThread::ProcessLoadedPackages(bool, bool, double, bool&, FFlushRequest const&) [/mnt/horde/++UE5/Sync/Engine/Source/./Runtime/CoreUObject/Private/Serialization/AsyncLoading.cpp:4785]
0x0000793ef264b269 libUnrealEditor-CoreUObject.so!FAsyncLoadingThread::TickAsyncLoading(bool, bool, double, FFlushRequest) [/mnt/horde/++UE5/Sync/Engine/Source/./Runtime/CoreUObject/Private/Serialization/AsyncLoading.cpp:5010]
0x0000793ef265ca6f libUnrealEditor-CoreUObject.so!FAsyncLoadingThread::ProcessLoading(bool, bool, double) [/mnt/horde/++UE5/Sync/Engine/Source/./Runtime/CoreUObject/Private/Serialization/AsyncLoading.cpp:7637]
0x0000793ef26d148c libUnrealEditor-CoreUObject.so!ProcessAsyncLoading(bool, bool, double) [/mnt/horde/++UE5/Sync/Engine/Source/./Runtime/CoreUObject/Private/Serialization/AsyncPackageLoader.cpp:314]
0x0000793ef2bab30e libUnrealEditor-CoreUObject.so!StaticTick(float, bool, float) [/mnt/horde/++UE5/Sync/Engine/Source/./Runtime/CoreUObject/Private/UObject/UObjectGlobals.cpp:870]
0x0000793eef96a5dc libUnrealEditor-Engine.so!UGameEngine::Tick(float, bool) [/mnt/horde/++UE5/Sync/Engine/Source/./Runtime/Engine/Private/GameEngine.cpp:1737]
0x0000000000244d8b UnrealEditor!FEngineLoop::Tick() [/mnt/horde/++UE5/Sync/Engine/Source/./Runtime/Launch/Private/LaunchEngineLoop.cpp:5897]
0x00000000002510da UnrealEditor!GuardedMain(char16_t const*) [/mnt/horde/++UE5/Sync/Engine/Source/./Runtime/Launch/Private/Launch.cpp:182]
0x0000793ef44a8a52 libUnrealEditor-UnixCommonStartup.so!CommonUnixMain(int, char**, int (*)(char16_t const*), void (*)()) [/mnt/horde/++UE5/Sync/Engine/Source/./Runtime/Unix/UnixCommonStartup/Private/UnixCommonStartup.cpp:269]
0x0000793ee7253cd0 libc.so.6!UnknownFunction(0x25ccf)
0x0000793ee7253d8a libc.so.6!__libc_start_main(+0x89)
0x000000000023a339 UnrealEditor!_start()

But it may also produce:

Signal 11 caught.
Malloc Size=262146 LargeMemoryPoolOffset=262162 
CommonUnixCrashHandler: Signal=11
[2024.04.23-21.37.24:742][229]LogCore: === Critical error: ===
Unhandled Exception: SIGSEGV: invalid attempt to read memory at address 0x000000003e800fd4

[2024.04.23-21.37.24:742][229]LogCore: Fatal error!

0x00007f1f9dafa915 libUnrealEditor-Core.so!mi_free [/mnt/horde/++UE5/Sync/Engine/Source/ThirdParty/mimalloc/2.0.0/src/alloc.c:484]
0x00007f1f9d384a1c libUnrealEditor-Core.so!FMemory::Free(void*) [/mnt/horde/++UE5/Sync/Engine/Source/Runtime/Core/Public/HAL/FMemory.inl:134]
0x00007f1f8c43678e libUnrealEditor-Chaos.so!Chaos::FMaterialData::~FMaterialData() [/mnt/horde/++UE5/Sync/Engine/Source/Runtime/Experimental/Chaos/Public/Chaos/ParticleDirtyFlags.h:779]
0x00007f1f8ce5a6d8 libUnrealEditor-Chaos.so!TArray<Chaos::FMaterialData, TSizedDefaultAllocator<32> >::SetNum(int, EAllowShrinking) [/mnt/horde/++UE5/Sync/Engine/Source/Runtime/Core/Public/Containers/Array.h:1900]
0x00007f1f8ce1457c libUnrealEditor-Chaos.so!Chaos::FPBDRigidsSolver::PushPhysicsState(double, int, int) [/mnt/horde/++UE5/Sync/Engine/Source/./Runtime/Experimental/Chaos/Private/PBDRigidsSolver.cpp:1416]
0x00007f1f8c731e9a libUnrealEditor-Chaos.so!Chaos::FPhysicsSolverBase::AdvanceAndDispatch_External(double) [/mnt/horde/++UE5/Sync/Engine/Source/./Runtime/Experimental/Chaos/Private/Chaos/Framework/PhysicsSolverBase.cpp:482]
0x00007f1f8e0247f5 libUnrealEditor-PhysicsCore.so!FChaosScene::StartFrame() [/mnt/horde/++UE5/Sync/Engine/Source/./Runtime/PhysicsCore/Private/ChaosScene.cpp:392]
0x00007f1f9a3550d6 libUnrealEditor-Engine.so!FStartPhysicsTickFunction::ExecuteTick(float, ELevelTick, ENamedThreads::Type, TRefCountPtr<FGraphEvent> const&) [/mnt/horde/++UE5/Sync/Engine/Source/./Runtime/Engine/Private/PhysicsEngine/PhysLevel.cpp:182]
0x00007f1f9ac6eafd libUnrealEditor-Engine.so!FTickFunctionTask::DoTask(ENamedThreads::Type, TRefCountPtr<FGraphEvent> const&) [/mnt/horde/++UE5/Sync/Engine/Source/./Runtime/Engine/Private/TickTaskManager.cpp:275]
0x00007f1f9ac6e300 libUnrealEditor-Engine.so!TGraphTask<FTickFunctionTask>::ExecuteTask(TArray<FBaseGraphTask*, TSizedDefaultAllocator<32> >&, ENamedThreads::Type, bool) [/mnt/horde/++UE5/Sync/Engine/Source/Runtime/Core/Public/Async/TaskGraphInterfaces.h:1235]
0x00007f1f9d1a95c3 libUnrealEditor-Core.so!FNamedTaskThread::ProcessTasksNamedThread(int, bool) [/mnt/horde/++UE5/Sync/Engine/Source/./Runtime/Core/Private/Async/TaskGraph.cpp:758]
0x00007f1f9d1a76ff libUnrealEditor-Core.so!FNamedTaskThread::ProcessTasksUntilQuit(int) [/mnt/horde/++UE5/Sync/Engine/Source/./Runtime/Core/Private/Async/TaskGraph.cpp:648]
0x00007f1f9d1a6076 libUnrealEditor-Core.so!FTaskGraphCompatibilityImplementation::WaitUntilTasksComplete(TArray<TRefCountPtr<FGraphEvent>, TSizedInlineAllocator<4u, 32, TSizedDefaultAllocator<32> > > const&, ENamedThreads::Type) [/mnt/horde/++UE5/Sync/Engine/Source/./Runtime/Core/Private/Async/TaskGraph.cpp:2120]
0x00007f1f9ac660bd libUnrealEditor-Engine.so!FTickTaskSequencer::ReleaseTickGroup(ETickingGroup, bool) [/mnt/horde/++UE5/Sync/Engine/Source/./Runtime/Engine/Private/TickTaskManager.cpp:555]
0x00007f1f9ac5ef2a libUnrealEditor-Engine.so!FTickTaskManager::RunTickGroup(ETickingGroup, bool) [/mnt/horde/++UE5/Sync/Engine/Source/./Runtime/Engine/Private/TickTaskManager.cpp:1582]
0x00007f1f99a13349 libUnrealEditor-Engine.so!UWorld::Tick(ELevelTick, float) [/mnt/horde/++UE5/Sync/Engine/Source/./Runtime/Engine/Private/LevelTick.cpp:1508]
0x00007f1f929692b4 libUnrealEditor-UnrealEd.so!UEditorEngine::Tick(float, bool) [/mnt/horde/++UE5/Sync/Engine/Source/./Editor/UnrealEd/Private/EditorEngine.cpp:2014]
0x00007f1f936970f2 libUnrealEditor-UnrealEd.so!UUnrealEdEngine::Tick(float, bool) [/mnt/horde/++UE5/Sync/Engine/Source/./Editor/UnrealEd/Private/UnrealEdEngine.cpp:547]
0x0000000000244d8b UnrealEditor!FEngineLoop::Tick() [/mnt/horde/++UE5/Sync/Engine/Source/./Runtime/Launch/Private/LaunchEngineLoop.cpp:5897]
0x00000000002510da UnrealEditor!GuardedMain(char16_t const*) [/mnt/horde/++UE5/Sync/Engine/Source/./Runtime/Launch/Private/Launch.cpp:182]
0x00007f1f9e098a52 libUnrealEditor-UnixCommonStartup.so!CommonUnixMain(int, char**, int (*)(char16_t const*), void (*)()) [/mnt/horde/++UE5/Sync/Engine/Source/./Runtime/Unix/UnixCommonStartup/Private/UnixCommonStartup.cpp:269]
0x00007f1f90e53cd0 libc.so.6!UnknownFunction(0x25ccf)
0x00007f1f90e53d8a libc.so.6!__libc_start_main(+0x89)
0x000000000023a339 UnrealEditor!_start()

Or:

Signal 11 caught.
Malloc Size=262146 LargeMemoryPoolOffset=262162 
CommonUnixCrashHandler: Signal=11
[2024.04.23-22.07.42:348][287]LogCore: === Critical error: ===
Unhandled Exception: SIGSEGV: invalid attempt to read memory at address 0x0000057336800004

[2024.04.23-22.07.42:348][287]LogCore: Fatal error!

0x000078594f985340 libc.so.6!UnknownFunction(0x157340)
0x00007859050959ec libUnrealEditor-TargetDeviceServices.so!FTargetDeviceProxyManager::AddProxyFromPongMessage(FTargetDeviceServicePong const&, TSharedRef<IMessageContext, (ESPMode)1> const&, bool) [/mnt/horde/++UE5/Sync/Engine/Source/./Developer/TargetDeviceServices/Private/Proxies/TargetDeviceProxyManager.cpp:184]
0x000078590509307c libUnrealEditor-TargetDeviceServices.so!FTargetDeviceProxyManager::HandlePongMessage(FTargetDeviceServicePong const&, TSharedRef<IMessageContext, (ESPMode)1> const&) [/mnt/horde/++UE5/Sync/Engine/Source/./Developer/TargetDeviceServices/Private/Proxies/TargetDeviceProxyManager.cpp:177]
0x00007859050aa17c libUnrealEditor-TargetDeviceServices.so!TRawMessageHandler<FTargetDeviceServicePong, FTargetDeviceProxyManager>::HandleMessage(TSharedRef<IMessageContext, (ESPMode)1> const&) [/mnt/horde/++UE5/Sync/Engine/Source/Runtime/MessagingCommon/Public/MessageHandlers.h:103]
0x0000785957fa5fa9 libUnrealEditor-Engine.so!FMessageEndpoint::ProcessMessage(TSharedRef<IMessageContext, (ESPMode)1> const&) [/mnt/horde/++UE5/Sync/Engine/Source/Runtime/MessagingCommon/Public/MessageEndpoint.h:1022]
0x00007858eff30426 libUnrealEditor-Messaging.so!FMessageDispatchTask::DoTask(ENamedThreads::Type, TRefCountPtr<FGraphEvent> const&) [/mnt/horde/++UE5/Sync/Engine/Source/./Runtime/Messaging/Private/Bus/MessageDispatchTask.cpp:42]
0x00007858eff4bf64 libUnrealEditor-Messaging.so!TGraphTask<FMessageDispatchTask>::ExecuteTask(TArray<FBaseGraphTask*, TSizedDefaultAllocator<32> >&, ENamedThreads::Type, bool) [/mnt/horde/++UE5/Sync/Engine/Source/Runtime/Core/Public/Async/TaskGraphInterfaces.h:1235]
0x000078595bba95c3 libUnrealEditor-Core.so!FNamedTaskThread::ProcessTasksNamedThread(int, bool) [/mnt/horde/++UE5/Sync/Engine/Source/./Runtime/Core/Private/Async/TaskGraph.cpp:758]
0x000078595bba76ff libUnrealEditor-Core.so!FNamedTaskThread::ProcessTasksUntilQuit(int) [/mnt/horde/++UE5/Sync/Engine/Source/./Runtime/Core/Private/Async/TaskGraph.cpp:648]
0x000078595bba6076 libUnrealEditor-Core.so!FTaskGraphCompatibilityImplementation::WaitUntilTasksComplete(TArray<TRefCountPtr<FGraphEvent>, TSizedInlineAllocator<4u, 32, TSizedDefaultAllocator<32> > > const&, ENamedThreads::Type) [/mnt/horde/++UE5/Sync/Engine/Source/./Runtime/Core/Private/Async/TaskGraph.cpp:2120]
0x00007859596660bd libUnrealEditor-Engine.so!FTickTaskSequencer::ReleaseTickGroup(ETickingGroup, bool) [/mnt/horde/++UE5/Sync/Engine/Source/./Runtime/Engine/Private/TickTaskManager.cpp:555]
0x000078595965ef2a libUnrealEditor-Engine.so!FTickTaskManager::RunTickGroup(ETickingGroup, bool) [/mnt/horde/++UE5/Sync/Engine/Source/./Runtime/Engine/Private/TickTaskManager.cpp:1582]
0x0000785958412e55 libUnrealEditor-Engine.so!UWorld::Tick(ELevelTick, float) [/mnt/horde/++UE5/Sync/Engine/Source/./Runtime/Engine/Private/LevelTick.cpp:1499]
0x00007859513692b4 libUnrealEditor-UnrealEd.so!UEditorEngine::Tick(float, bool) [/mnt/horde/++UE5/Sync/Engine/Source/./Editor/UnrealEd/Private/EditorEngine.cpp:2014]
0x00007859520970f2 libUnrealEditor-UnrealEd.so!UUnrealEdEngine::Tick(float, bool) [/mnt/horde/++UE5/Sync/Engine/Source/./Editor/UnrealEd/Private/UnrealEdEngine.cpp:547]
0x0000000000244d8b UnrealEditor!FEngineLoop::Tick() [/mnt/horde/++UE5/Sync/Engine/Source/./Runtime/Launch/Private/LaunchEngineLoop.cpp:5897]
0x00000000002510da UnrealEditor!GuardedMain(char16_t const*) [/mnt/horde/++UE5/Sync/Engine/Source/./Runtime/Launch/Private/Launch.cpp:182]
0x000078595b308a52 libUnrealEditor-UnixCommonStartup.so!CommonUnixMain(int, char**, int (*)(char16_t const*), void (*)()) [/mnt/horde/++UE5/Sync/Engine/Source/./Runtime/Unix/UnixCommonStartup/Private/UnixCommonStartup.cpp:269]
0x000078594f853cd0 libc.so.6!UnknownFunction(0x25ccf)
0x000078594f853d8a libc.so.6!__libc_start_main(+0x89)
0x000000000023a339 UnrealEditor!_start()

I’m not sure if they are linked or completely different errors, but I figure I’d provide all of them if it helps. Especially confusing is that this also happens in a minimally modified Open World template map. Changes to the default map should only be setting the trace channel so my vehicle works and building the level(s). The crash may occur after a 2-3 laps of my small test world or before I can finish a circuit around the default map’s inner ring (1-4 minutes of driving around) and I can’t identify any triggering factor. I can also idle in place for several minutes without it crashing.

The actor count in the default Open World changes and I can drive to the edge of the map, so things seem to be loading and unloading at some point. There are some

[2024.04.23-21.52.59:027][822]LogBulkDataRegistry: Warning: /Memory/UEDPIE_0_5GAQ9WTD9T21AO9PBUP0IIHSY.Clean:PersistentLevel.LandscapeStreamingProxy_D7T4VF4LBP34PHV9XOEVM5TIG_1_7_1_0.Heightmap_3 failed to register BulkData FEB76404025C9AC0BF6240EFB680112E from Serialize/Persistent in the BulkDataRegistry: it already exists with owner /Memory/UEDPIE_0_5GAQ9WTD9T21AO9PBUP0IIHSY_InstanceOf_/Game/__ExternalActors__/Levels/_Clean/Clean/1/0Q/REZNHWIXC9CPM16V5ALX7U.
            Payload: d62c9e1e6358a3587ac13135ad899a6deb991325
    ExistingPayload: d62c9e1e6358a3587ac13135ad899a6deb991325

warnings when backtracking to previous chunks, but no immediate crash.

Errors are from 5.4 Preview (downloaded as ZIP) after upgrading from 5.3.0. All are present both before and after the swap.

Specs:
OS: Arch Linux
CPU: Ryzen 1700
GPU: RX 580 8GB
RAM: 16GB + 24GB swap

Thank you in advance for any help resolving this. If I’m missing any information or there is something I should test, please let me know.

I may have found the solution to this and it is actually unrelated. The vehicles I use are composed of multiple parts and currently generated at runtime. I was unaware that the UE garbage collected would gather up the pointers I was creating. This wasn’t usually noticeable in the open world as that would crash first, but in a smaller, non world partitioned test map, I was seeing the signs of pointer errors in behaviour and other crashes related directly to the vehicles. After correcting the GC issues, everything appears to work smoothly now.

For anyone having similar issues, this is the blog post I used to fix the issues: Memory Management & Garbage Collection in Unreal Engine 5 | Mikelis' Game Blog

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.