Migration from 5.6 to 5.7.2 causes MTAccessDetector.h Acquiring a read access while there is already a write access for UnrealEditor_NavigationSystem

Hello. Migrated our project from 5.6 to 5.7.2 and the levels where we have navigation system used cause crashes.

=== UE 5.7 NavigationSystem MTAccessDetector Crash on Level Load ===

Engine Version: 5.7.2
Platform: Windows 11 (Win64)
Build Config: Development Editor

== Issue ==
Assertion crash every time a level is opened in the editor. 100% reproducible.
The level contains ~10k+ static meshes and uses 2 nav agents (Demon, Shadow).
This did NOT occur on UE 5.6 with the same project/level.

== Error ==

Assertion failed: !ErrorDetected || UE::Private::FMTAccessDetectorOptions::bSuppressCheckFailure
[File:D:\build++UE5\Sync\Engine\Source\Runtime\Core\Public\Misc\MTAccessDetector.h] [Line: 92]
Acquiring a read access while there is already a write access

== Callstack ==
UnrealEditor_Core
UnrealEditor_NavigationSystem  (x4 frames - race condition origin)
UnrealEditor_Engine            (x10 frames - world/level loading)
UnrealEditor_NavigationSystem  (x3 frames)
UnrealEditor_Engine            (x2 frames)
UnrealEditor_NavigationSystem  (x3 frames)
UnrealEditor_Engine            (x1 frame)
UnrealEditor_NavigationSystem  (x1 frame)
UnrealEditor_Engine            (x8 frames)
UnrealEditor_UnrealEd          (x3 frames - editor startup)
UnrealEditor_Core
UnrealEditor_Engine
UnrealEditor_UnrealEd          (x5 frames)
UnrealEditor                   (x5 frames)
kernel32 / ntdll

== Context from log ==
The crash occurs during static mesh building (parallel) concurrent with NavigationSystem initialization:

[2026.02.03-18.43.49:118][0] LogWindows: Error: appError called: Assertion failed: !ErrorDetected [MTAccessDetector.h:92]
Acquiring a read access while there is already a write access

[2026.02.03-18.43.52:798][0] LogStaticMesh: Built static mesh [3.95s] SM_curtain
[2026.02.03-18.43.52:798][0] LogStaticMesh: Built static mesh [1.41s] SM_Clothes_Hanging_01c
– crash here during concurrent nav/mesh operations –

== Attempted workarounds (none resolved the crash) ==

  • bInitialBuildingLocked=True
  • bAutoCreateNavigationData=False
  • bDoFullyAsyncNavDataGathering=True
  • NavigationSystemClassName=None
  • Clearing DerivedDataCache and Intermediate/Build

Also, migration was done with full wipe of all caches, binaries etc. Also cleaned derived data cache in UE common folder in the AppData .

It loads levels with small number of meshes (a few hundreds) and a single AI agent. But slightly more comples or much more complex - it crashes. It may be related to UE-240424.