Description

The level blueprint has a macro that references a level.
FBlueprintNodeTemplateCache keeps holding this cashe at transition level.

 

Unable to find source-code formatter for language: text. Available languages are: actionscript, ada, applescript, bash, c, c#, c++, cpp, css, erlang, go, groovy, haskell, html, java, javascript, js, json, lua, none, nyan, objc, perl, php, python, r, rainbow, ruby, scala, sh, sql, swift, visualbasic, xml, yaml
Cmd: MAP LOAD FILE="../../../../MacroMemoryLeak/Content/ThirdPersonBP/Maps/ThirdPersonExampleMap.umap" TEMPLATE=0 SHOWPROGRESS=1 FEATURELEVEL=3
LightingResults: New page: Lighting Build
LoadErrors: New page: Loading map: ThirdPersonExampleMap.umap
LogWorld: UWorld::CleanupWorld for ThirdPersonExampleMap, bSessionEnded=true, bCleanupResources=true
MapCheck: New page: Map Check
LightingResults: New page: Lighting Build
LogUObjectHash: Compacting FUObjectHashTables data took   3.06ms
LogReferenceChain: (root) GCObjectReferencer /Engine/Transient.GCObjectReferencer_0::AddReferencedObjects(): FBlueprintNodeTemplateCache
LogReferenceChain:  K2Node_MacroInstance /Engine/Transient.PROTO_BP_Blueprint_0:UserConstructionScript.K2Node_MacroInstance_23->MacroGraph
LogReferenceChain:   EdGraph /Game/ThirdPersonBP/Maps/ThirdPersonExampleMap.ThirdPersonExampleMap:PersistentLevel.ThirdPersonExampleMap.NewMacro_0->Outer
LogReferenceChain:    LevelScriptBlueprint /Game/ThirdPersonBP/Maps/ThirdPersonExampleMap.ThirdPersonExampleMap:PersistentLevel.ThirdPersonExampleMap->Outer
LogReferenceChain:     Level /Game/ThirdPersonBP/Maps/ThirdPersonExampleMap.ThirdPersonExampleMap:PersistentLevel->Outer
LogReferenceChain:      World /Game/ThirdPersonBP/Maps/ThirdPersonExampleMap.ThirdPersonExampleMap
LogReferenceChain:   
LogEditorServer: Error: Old world /Game/ThirdPersonBP/Maps/ThirdPersonExampleMap.ThirdPersonExampleMap not cleaned up by garbage collection while loading new map! Referenced by:
(root) GCObjectReferencer /Engine/Transient.GCObjectReferencer_0::AddReferencedObjects(): FBlueprintNodeTemplateCache
 K2Node_MacroInstance /Engine/Transient.PROTO_BP_Blueprint_0:UserConstructionScript.K2Node_MacroInstance_23->MacroGraph
  EdGraph /Game/ThirdPersonBP/Maps/ThirdPersonExampleMap.ThirdPersonExampleMap:PersistentLevel.ThirdPersonExampleMap.NewMacro_0->Outer
   LevelScriptBlueprint /Game/ThirdPersonBP/Maps/ThirdPersonExampleMap.ThirdPersonExampleMap:PersistentLevel.ThirdPersonExampleMap->Outer
    Level /Game/ThirdPersonBP/Maps/ThirdPersonExampleMap.ThirdPersonExampleMap:PersistentLevel->Outer
     World /Game/ThirdPersonBP/Maps/ThirdPersonExampleMap.ThirdPersonExampleMap
LogReferenceChain: (root) GCObjectReferencer /Engine/Transient.GCObjectReferencer_0::AddReferencedObjects(): FBlueprintNodeTemplateCache
LogReferenceChain:  K2Node_MacroInstance /Engine/Transient.PROTO_BP_Blueprint_0:UserConstructionScript.K2Node_MacroInstance_23->MacroGraph
LogReferenceChain:   EdGraph /Game/ThirdPersonBP/Maps/ThirdPersonExampleMap.ThirdPersonExampleMap:PersistentLevel.ThirdPersonExampleMap.NewMacro_0->Outer
LogReferenceChain:    LevelScriptBlueprint /Game/ThirdPersonBP/Maps/ThirdPersonExampleMap.ThirdPersonExampleMap:PersistentLevel.ThirdPersonExampleMap->GeneratedClass
LogReferenceChain:     BlueprintGeneratedClass /Game/ThirdPersonBP/Maps/ThirdPersonExampleMap.ThirdPersonExampleMap_C->Outer
LogReferenceChain:      Package /Game/ThirdPersonBP/Maps/ThirdPersonExampleMap
LogReferenceChain:   
LogEditorServer: Error: Old level package /Game/ThirdPersonBP/Maps/ThirdPersonExampleMap not cleaned up by garbage collection while loading new map! Referenced by:
(root) GCObjectReferencer /Engine/Transient.GCObjectReferencer_0::AddReferencedObjects(): FBlueprintNodeTemplateCache
 K2Node_MacroInstance /Engine/Transient.PROTO_BP_Blueprint_0:UserConstructionScript.K2Node_MacroInstance_23->MacroGraph
  EdGraph /Game/ThirdPersonBP/Maps/ThirdPersonExampleMap.ThirdPersonExampleMap:PersistentLevel.ThirdPersonExampleMap.NewMacro_0->Outer
   LevelScriptBlueprint /Game/ThirdPersonBP/Maps/ThirdPersonExampleMap.ThirdPersonExampleMap:PersistentLevel.ThirdPersonExampleMap->GeneratedClass
    BlueprintGeneratedClass /Game/ThirdPersonBP/Maps/ThirdPersonExampleMap.ThirdPersonExampleMap_C->Outer
     Package /Game/ThirdPersonBP/Maps/ThirdPersonExampleMap
LogOutputDevice: Warning: 


 

 

Steps to Reproduce
  1. Open attached project with UE4.23
  2. Open NewWidgetBlueprint
  3. Open ThirdPersonExsampleMap
  4. Engine shows memory leak dialog

417381-myproject.zip[Image Removed]

Callstack
UE4Editor-Core.dll!ReportAssert() [d:\dev\ue423\engine\source\runtime\core\private\windows\windowsplatformcrashcontext.cpp:582]
UE4Editor-Core.dll!FWindowsErrorOutputDevice::Serialize() [d:\dev\ue423\engine\source\runtime\core\private\windows\windowserroroutputdevice.cpp:79]
UE4Editor-Core.dll!FOutputDevice::LogfImpl() [d:\dev\ue423\engine\source\runtime\core\private\misc\outputdevice.cpp:71]
UE4Editor-Core.dll!AssertFailedImplV() [d:\dev\ue423\engine\source\runtime\core\private\misc\assertionmacros.cpp:101]
UE4Editor-Core.dll!FDebug::AssertFailed() [d:\dev\ue423\engine\source\runtime\core\private\misc\assertionmacros.cpp:455]
UE4Editor-UnrealEd.dll!UEditorEngine::CheckForWorldGCLeaks() [d:\dev\ue423\engine\source\editor\unrealed\private\editorserver.cpp:1994]
UE4Editor-UnrealEd.dll!UEditorEngine::EditorDestroyWorld() [d:\dev\ue423\engine\source\editor\unrealed\private\editorserver.cpp:2115]
UE4Editor-UnrealEd.dll!UEditorEngine::Map_Load() [d:\dev\ue423\engine\source\editor\unrealed\private\editorserver.cpp:2469]
UE4Editor-UnrealEd.dll!UEditorEngine::HandleMapCommand() [d:\dev\ue423\engine\source\editor\unrealed\private\editorserver.cpp:6085]
UE4Editor-UnrealEd.dll!UEditorEngine::Exec() [d:\dev\ue423\engine\source\editor\unrealed\private\editorserver.cpp:5569]
UE4Editor-UnrealEd.dll!UUnrealEdEngine::Exec() [d:\dev\ue423\engine\source\editor\unrealed\private\unrealedsrv.cpp:691]
UE4Editor-UnrealEd.dll!FEditorFileUtils::LoadMap() [d:\dev\ue423\engine\source\editor\unrealed\private\filehelpers.cpp:2446]
UE4Editor-AssetTools.dll!FAssetTypeActions_World::OpenAssetEditor() [d:\dev\ue423\engine\source\developer\assettools\private\assettypeactions\assettypeactions_world.cpp:32]
UE4Editor-UnrealEd.dll!FAssetEditorManager::OpenEditorForAsset() [d:\dev\ue423\engine\source\editor\unrealed\private\toolkits\asseteditormanager.cpp:390]
UE4Editor-AssetTools.dll!FAssetTypeActions_Base::AssetsActivated() [d:\dev\ue423\engine\source\developer\assettools\public\assettypeactions_base.h:57]
UE4Editor-ContentBrowser.dll!SContentBrowser::OnAssetsActivated() [d:\dev\ue423\engine\source\editor\contentbrowser\private\scontentbrowser.cpp:2123]
UE4Editor-ContentBrowser.dll!TBaseSPMethodDelegateInstance<0,SContentBrowser,0,void __cdecl(TArray<FAssetData,TSizedDefaultAllocator<32> > const &,enum EAssetTypeActivationMethod::Type)>::ExecuteIfSafe() [d:\dev\ue423\engine\source\runtime\core\public\delegates\delegateinstancesimpl.h:369]
UE4Editor-ContentBrowser.dll!SAssetView::OnListMouseButtonDoubleClick() [d:\dev\ue423\engine\source\editor\contentbrowser\private\sassetview.cpp:4297]
UE4Editor-ContentBrowser.dll!TBaseSPMethodDelegateInstance<0,SAssetView,0,void __cdecl(TSharedPtr<FAssetViewItem,0>)>::ExecuteIfSafe() [d:\dev\ue423\engine\source\runtime\core\public\delegates\delegateinstancesimpl.h:369]
UE4Editor-ContentBrowser.dll!TBaseDelegate<void,TSharedPtr<FAssetViewItem,0> >::ExecuteIfBound() [d:\dev\ue423\engine\source\runtime\core\public\delegates\delegatesignatureimpl.inl:673]
UE4Editor-ContentBrowser.dll!SListView<TSharedPtr<FAssetViewItem,0> >::Private_OnItemDoubleClicked() [d:\dev\ue423\engine\source\runtime\slate\public\widgets\views\slistview.h:883]
UE4Editor-ContentBrowser.dll!STableRow<TSharedPtr<FAssetViewItem,0> >::OnMouseButtonDoubleClick() [d:\dev\ue423\engine\source\runtime\slate\public\widgets\views\stablerow.h:334]
UE4Editor-Slate.dll!FEventRouter::Route<FReply,FEventRouter::FBubblePolicy,FPointerEvent,<lambda_cde3b80cdb8a457b0f09fee78051d179> >() [d:\dev\ue423\engine\source\runtime\slate\private\framework\application\slateapplication.cpp:273]
UE4Editor-Slate.dll!FSlateApplication::RoutePointerDoubleClickEvent() [d:\dev\ue423\engine\source\runtime\slate\private\framework\application\slateapplication.cpp:6246]
UE4Editor-Slate.dll!FSlateApplication::ProcessMouseButtonDoubleClickEvent() [d:\dev\ue423\engine\source\runtime\slate\private\framework\application\slateapplication.cpp:6233]
UE4Editor-Slate.dll!FSlateApplication::OnMouseDoubleClick() [d:\dev\ue423\engine\source\runtime\slate\private\framework\application\slateapplication.cpp:6203]
UE4Editor-ApplicationCore.dll!FWindowsApplication::ProcessDeferredMessage() [d:\dev\ue423\engine\source\runtime\applicationcore\private\windows\windowsapplication.cpp:1884]
UE4Editor-ApplicationCore.dll!FWindowsApplication::DeferMessage() [d:\dev\ue423\engine\source\runtime\applicationcore\private\windows\windowsapplication.cpp:2332]
UE4Editor-ApplicationCore.dll!FWindowsApplication::ProcessMessage() [d:\dev\ue423\engine\source\runtime\applicationcore\private\windows\windowsapplication.cpp:1560]
UE4Editor-ApplicationCore.dll!FWindowsApplication::AppWndProc() [d:\dev\ue423\engine\source\runtime\applicationcore\private\windows\windowsapplication.cpp:790]

Have Comments or More Details?

There's no existing public thread on this issue, so head over toAnswerHub just mention UE-81839 in the post.

1
Login to Vote

Fixed
ComponentGameplay - Blueprint
Affects Versions4.23
Target Fix4.24
Fix Commit9663078
Main Commit9663081
Release Commit9663078
CreatedOct 15, 2019
ResolvedOct 17, 2019
UpdatedNov 22, 2019