Error: === Handled ensure: ===

Hello friends, I migrated a game to Unreal Engine 5 (from 4.27) and I’m getting this error in the log every 2 minutes of gameplay. I only used blueprints and I don’t know anything about C++. Would there be an easy way for me to resolve this error? Thank you very much for your attention.

[2022.04.24-12.12.06:871][828]LogStats:             FDebug::EnsureFailed - 13.921 s
[2022.04.24-12.12.06:872][828]LogOutputDevice: Warning:

Script Stack (0 frames):

[2022.04.24-12.12.06:874][828]LogStats: FPlatformStackWalk::StackWalkAndDump -  0.001 s
[2022.04.24-12.12.06:874][828]LogOutputDevice: Error: === Handled ensure: ===
[2022.04.24-12.12.06:874][828]LogOutputDevice: Error:
[2022.04.24-12.12.06:875][828]LogOutputDevice: Error: Ensure condition failed: CurrentGCObject->GetReferencerName() != FGCObject::UnknownGCObjectName [File:D:\build\++UE5\Sync\Engine\Source\Runtime\CoreUObject\Private\Misc\GCObjectReferencer.cpp] [Line: 166]
[2022.04.24-12.12.06:876][828]LogOutputDevice: Error: Please make sure all FGCObject derived classes have a unique name by overriding FGCObject::GetReferencerName() function. FGCObject::GetReferencerName() will become pure virtual in the next engine release. See callstack for details.
[2022.04.24-12.12.06:877][828]LogOutputDevice: Error: Stack:
[2022.04.24-12.12.06:877][828]LogOutputDevice: Error: [Callstack] 0x00007ff6f3a7646b HexFactory.exe!FVerifyReferencerNameCollector::VerifyReferencerName() []
[2022.04.24-12.12.06:880][828]LogOutputDevice: Error: [Callstack] 0x00007ff6f3a763d6 HexFactory.exe!UGCObjectReferencer::VerifyGCObjectNames() []
[2022.04.24-12.12.06:880][828]LogOutputDevice: Error: [Callstack] 0x00007ff6f3a51e01 HexFactory.exe!TBaseUObjectMethodDelegateInstance<0,UGCObjectReferencer,void __cdecl(void),FDefaultDelegateUserPolicy>::ExecuteIfSafe() []
[2022.04.24-12.12.06:883][828]LogOutputDevice: Error: [Callstack] 0x00007ff6f1d5f9dd HexFactory.exe!TMulticastDelegate<void __cdecl(void),FDefaultDelegateUserPolicy>::Broadcast() []
[2022.04.24-12.12.06:883][828]LogOutputDevice: Error: [Callstack] 0x00007ff6f3be8594 HexFactory.exe!CollectGarbageInternal() []
[2022.04.24-12.12.06:884][828]LogOutputDevice: Error: [Callstack] 0x00007ff6f3c79d35 HexFactory.exe!TryCollectGarbage() []
[2022.04.24-12.12.06:884][828]LogOutputDevice: Error: [Callstack] 0x00007ff6f8e2291a HexFactory.exe!UEngine::ConditionalCollectGarbage() []
[2022.04.24-12.12.06:885][828]LogOutputDevice: Error: [Callstack] 0x00007ff6f8610697 HexFactory.exe!UWorld::Tick() []
[2022.04.24-12.12.06:886][828]LogOutputDevice: Error: [Callstack] 0x00007ff6f843b95c HexFactory.exe!UGameEngine::Tick() []
[2022.04.24-12.12.06:889][828]LogOutputDevice: Error: [Callstack] 0x00007ff6f1d51267 HexFactory.exe!FEngineLoop::Tick() []
[2022.04.24-12.12.06:889][828]LogOutputDevice: Error: [Callstack] 0x00007ff6f1d68bbc HexFactory.exe!GuardedMain() []
[2022.04.24-12.12.06:890][828]LogOutputDevice: Error: [Callstack] 0x00007ff6f1d68c8a HexFactory.exe!GuardedMainWrapper() []
[2022.04.24-12.12.06:890][828]LogOutputDevice: Error: [Callstack] 0x00007ff6f1d6bd0c HexFactory.exe!LaunchWindowsStartup() []
[2022.04.24-12.12.06:891][828]LogOutputDevice: Error: [Callstack] 0x00007ff6f1d7d4b4 HexFactory.exe!WinMain() []
[2022.04.24-12.12.06:891][828]LogOutputDevice: Error: [Callstack] 0x00007ff6fa0f392a HexFactory.exe!__scrt_common_main_seh() [d:\a01\_work\43\s\src\vctools\crt\vcstartup\src\startup\exe_common.inl:288]
[2022.04.24-12.12.06:892][828]LogOutputDevice: Error: [Callstack] 0x00007ff948077034 KERNEL32.DLL!UnknownFunction []
[2022.04.24-12.12.06:893][828]LogOutputDevice: Error: [Callstack] 0x00007ff949942651 ntdll.dll!UnknownFunction []
[2022.04.24-12.12.06:893][828]LogOutputDevice: Error:
[2022.04.24-12.12.06:905][828]LogStats:             FDebug::EnsureFailed -  0.034 s
[2022.04.24-12.12.06:916][828]LogStreaming: Display: 0.522 ms (0.429+0.093) ms for processing 7077/7077 objects in NotifyUnreachableObjects( Queued=0, Async=0). Removed 0/0 (885->885 tracked) packages and 0/7077 (2385->2385 tracked) public exports.
3 Likes

I’m having the same issue after migrating from 4.26 to 5EA and after that to 5.0.

2 Likes

There’s been a change in the GetReferencerName() and in the current release is pure virtual, so you need to override it in every class that derive from FGCObject.

I can’t really say more only seeing that log, can you provide more info?

1 Like

I noticed that the error starts to occur when I put an actor in the game (Inherited in blueprints from Actor). Here is the full log, but I don’t think it will help. How do I list everything derived from FGCObject to fix it? Thanks!
HexFactory.log (76.0 KB)

Find objects in your project that derive from FGCObject and add method overrides

    virtual FString GetReferencerName() const override
    {
        return TEXT("custom name");
    }
2 Likes

Thanks, it works for me!!!
//.h
virtual FString GetReferencerName()const override;
//.cpp
FString LuaState::GetReferencerName() const
{
return FString(“VankeLusGCObject”);
}

Hello,

I think I have the same issue (How to use "AR Session" and "Add Runtime Candidate Image" with Blueprint ?)

If we use only Blueprint, how can we fix it ? Is it an engine bug to report ?