Hello again!
My team is continuing to iterate on Multiprocess Cook in an effort to speed up our game pipelines. However, we are regularly-but-randomly hitting failures of this sort:
[File:<repo_path>\Engine\Source\Runtime\Engine\Private\WorldPartition\WorldPartitionLevelHelper.cpp]
LogOutputDevice: Error: [CookWorker 0]: Failed to find actor 'DecalActor_UAID_BCFCE73D664965C802_1442052792' in package '/Game/__ExternalActors__/<asset_path>/0/51/NO9TBPDCW9K2K5YFK2JCNO'.
In this case, it is a Decal Actor, but we’ve seen it with Static Mesh Actors and Spline Actors as well. Notably, if we re-cook the same CL and settings with a single process, these errors do not occur. Even if you recook with Multiprocess Cook, you occasionally do not get errors, or the actor which causes this ensure is different.
My best guess is there is some non-determinism in the assignment of actors to different processes for cooking which somehow results in an actor being unavailable at the time it is needed during cook. Not sure.
Any guidance appreciated! Thank you!
[Attachment Removed]
Steps to Reproduce
Create Project
Create a large World Partition world utilizing OFPA actors of various sorts
Enabled Multiprocess Cook using some reasonable number of threads (3 is sufficient)
Attempt to Cook
Observe Cook failing randomly with “Failed to find actor”
[Attachment Removed]
Hi there,
I’m trying to reproduce this issue however I haven’t had any luck after following the steps you’ve provided. Are there any more specifics that you can tell me about you situation? e.g Platform, number of actors, Number of actor types, size of the world etc.
Additionally If you are able to make a minimal repro project that would be most helpful. Although I understand this may not be feasible.
Thank you,
Louis
[Attachment Removed]
We haven’t had any reports of file contention between workers; it is unexpected because package load only requests read access which is supposed to allow simultaneous access from multiple processes.
One problem that might be relevant is corrupt data in the assetregistry due to corruption when renaming a map, but that was fixed in 5.6 so you should already have the fix. But since it has occurred before, we should check for it again. Run the pkginfo commandlet on the ExternalActor package that was reported as failure to load in this case:
UnrealEditor-Cmd.exe <ProjectName> -run=PkgInfo -exports -dumptofile=<OutputFilePath> <FullPathToUAssetFileInCookedFolder>
What does PkgInfo report? What UObject types are in the file?
[Attachment Removed]
That data looks normal. The Actor instance is HLOD_Landscape_000000004a01201a which is a WorldPartitionHLOD aka class AWorldPartitionHLOD in c++.
So the only explanation we have for why the file is unopenable is your contention hypothesis.
And more generally then CookWorkers blocking each other from reading the file, it could be any process opening the file for exclusive access. The only other potential process I would expect is a virus checker; is there a virus checker running on your machine?
[Attachment Removed]
PrepareSave is preparing the save of the cooked package, in Saved\Cooked\<Platform> (or to an in-memory buffer when cooking with zenserver) and will not touch the editor version of the file.
I think there are two next steps to investigate this, and both require some c++ instrumentation; is writing these feasible for you?
In either order,
- Find out which process is holding the file open.
- Inject some code into the code in LinkerLoad.cpp that reports error opening file. There are three spots in that file that print “Error opening file” and return LINKER_Failed. Add a call to your new function DiagnoseFileOpenError(PackagePath.GetLocalFullPath()) to each of them.
- In DiagnoseFileOpenError, use the recommended tool for windows to find out which process has a file open. I searched on google for this and found out the recommended tool is Restart Manager (Rm) functions: RmStartSession, RMRegisterResource, RMGetList. They give you a PID, and then you use other functions to look up process name from the pid. We have an example of using this already in Unreal, but only in our CSharp code; see GetProcessLockingFiles in Engine\Source\Programs\AutomationTool\Gauntlet\Framework\FileLockInfo.cs.
- Find out where in the UnrealEditor process the file is being locked.
- Since virus scanner seems unlikely as the culprit, the only likely possibility is UnrealEditor. We can just assume that’s the case and try to find out where files are being locked.
- The only feasible approach I’ve thought of so far is to add logs to the Unreal code that calls the Windows file API. In theory this will be many functions, and many calls to those functions, but I would start with only the calls to CreateFileW from Engine\Source\Runtime\Core\Private\Windows\WindowsPlatformFile.cpp, in the case that WinFlags do not include FILE_SHARE_READ. I think the only case where that occurs ins FWindowsPlatformFile::OpenWrite.
- Get the FNormalizedFilename, and if the FNormalizedFileName include “__ExternalActors__” and the WinFlags do not include FILE_SHARE_READ, issue a log statement including the callstack, and investigate with extreme prejudice.
I tried out step 2 on the Lyra cook; as expected it did not fire. Does it fire in your cook?
FNormalizedFilename NormalizedFilename(Filename);
if (0 == (WinFlags & FILE_SHARE_READ) && IsRunningCookCommandlet() && FStringView(*NormalizedFilename).Contains(TEXT("__ExternalActors"), ESearchCase::IgnoreCase))
{
UE_LOG(LogTemp, Warning, TEXT("MPCookWriteDiagnostics: Opening %s for write."), *NormalizedFilename);
FDebug::DumpStackTraceToLog(ELogVerbosity::Display);
}
HANDLE Handle = CreateFileW(*NormalizedFilename, Access, WinFlags, NULL, Create, FILE_ATTRIBUTE_NORMAL, NULL);
[Attachment Removed]
The actor package no longer existing reminded me of this bugfix we added to 5.7 for MultiProcessCook getting stale references to deleted actors. Taking this might fix the issue.
The bug report:
UE-274858
AssetRegistry DiscoveryCache is reporting deleted external actors
<Nothing useful in the description>
The bugfix:
CL 42649348 aka github commit 52b19b9c1ce0fe38e3fddac1fd0971d4679de29a
> [AssetRegistry] - No longer force cook workers to read the discovery cache as there isn’t a guarantee that the director wrote out a new version
Can you take that fix and see if it fixes this issue for deleted actor packages?
If it does not fix the issue for deleted actor packages then we can redirect to start debugging why the cookworkers are trying to load those deleted packages.
If the issue is fix for deleted actor packages but still occurs for non-deleted actor packages, then we should rerun the instrumentation you wrote, until it occurs on one of the existing packages. If it appears that the file is failing to open for reasons other than a process locking the file, then we will need to add instrumentation to LinkerLoad to print out why it is failing to open the file.
[Attachment Removed]
Hi Louis!
Let me try to answer your questions:
We’ve seen it for cooks for WinGDK, XSX, and Win64 games. I may have also seen it for PS5 but I don’t know that for sure, I’ve just been doing lots of cooking for that recently.
Not entirely sure how to answer “number of actors”. It always fails on one actor when cooking, but I’m pretty confident it is a “first actor his kills the cook” sort of situation
We’ve seen several actor types. Decals, Static Meshes, Blueprints, and Splines have been reported to me. I assume the actor type is actually probably a bit irrelevant, but rather perhaps it has something to do with the dependency tree of the World Partition the actor is in.
Our primary world is rather large and complex. It is a WP world of approx 8km x 8km, with many nested LIs, a large landscape, and thousands of actors.
Let me try running some cooks on our smaller maps. This might help narrow in on the cause, and get a broader list of affected actors for you. If I find one that is simple enough, I will provide a specific repro. At this time, I don’t know what is causing this issue, so my repro is a guess.
[Attachment Removed]
Hi again,
Thank you very much for the additional details. I’ve tried adjusting my testing environment but I unfortunately I still have been unable to repro the issue. If I can’t reproduce this I would need to gather as much info as possible in order to submit a bug report. E.g hardware specs (if relevant), any logs and of course if you can get that repro it would be very helpful.
Cheers,
Louis
[Attachment Removed]
Hi Louis,
Understandable, sounds good. I’ve been trying to get a more minimal repro in one of our test maps, but haven’t had luck. That makes me fear it’s probably related to the complexity of nested level instances, or the scale of our main game world…which isn’t very helpful.
I’ll keep digging. I don’t suspect hardware specs have an impact here -- we’ve seen it on several different machines who have attempted to cook this map, with substantially different specs. I’ll try to grab a full log of the issue. I’ll follow up when I have anything more to go on.
Thanks,
Chris
[Attachment Removed]
Okay, so the full log for this is massive, but I’ve got some excepts that are interesting.
In this case, it failed on an HLOD actor. So this actor is not in an LI or anything like that:
[2026.03.27-14.31.32:114][ 0]LogInit: Display: LogOutputDevice: Error: [CookWorker 1]: Ensure condition failed: false [File:C:\main-new\Engine\Source\Runtime\Engine\Private\WorldPartition\WorldPartitionLevelHelper.cpp] [Line: 921]
[2026.03.27-14.31.32:115][ 0]LogInit: Display: LogOutputDevice: Error: [CookWorker 1]: Failed to find actor 'HLOD_Landscape_000000004a01201a' in package '/Game/__ExternalActors__/Maps/Production/<asset_path>/E/FM/UH49LTV4Y8EHT3UM4V0TL9'.
[2026.03.27-14.31.32:116][ 0]LogInit: Display: LogOutputDevice: Error: [CookWorker 1]: Stack:
[2026.03.27-14.31.32:116][ 0]LogInit: Display: LogOutputDevice: Error: [CookWorker 1]: [Callstack] 0x00007ffc83b9443d UnrealEditor-Engine.dll!``FWorldPartitionLevelHelper::LoadActorsInternal'::`32'::<lambda_2>::operator()'::`105'::<lambda_3>::operator()() [C:\main-new\Engine\Source\Runtime\Engine\Private\WorldPartition\WorldPartitionLevelHelper.cpp:921]
[2026.03.27-14.31.32:117][ 0]LogInit: Display: LogOutputDevice: Error: [CookWorker 1]: [Callstack] 0x00007ffc82bd6e2d UnrealEditor-Engine.dll!`FWorldPartitionLevelHelper::LoadActorsInternal'::`32'::<lambda_2>::operator()() [C:\main-new\Engine\Source\Runtime\Engine\Private\WorldPartition\WorldPartitionLevelHelper.cpp:923]
[2026.03.27-14.31.32:119][ 0]LogInit: Display: LogOutputDevice: Error: [CookWorker 1]: [Callstack] 0x00007ffc82c26234 UnrealEditor-Engine.dll!FWorldPartitionLevelHelper::LoadActorsInternal() [C:\main-new\Engine\Source\Runtime\Engine\Private\WorldPartition\WorldPartitionLevelHelper.cpp:959]
[2026.03.27-14.31.32:120][ 0]LogInit: Display: LogOutputDevice: Error: [CookWorker 1]: [Callstack] 0x00007ffc82c26a77 UnrealEditor-Engine.dll!FWorldPartitionLevelHelper::LoadActorsWithPropertyOverridesInternal() [C:\main-new\Engine\Source\Runtime\Engine\Private\WorldPartition\WorldPartitionLevelHelper.cpp:522]
[2026.03.27-14.31.32:121][ 0]LogInit: Display: LogOutputDevice: Error: [CookWorker 1]: [Callstack] 0x00007ffc82c2bebd UnrealEditor-Engine.dll!UWorldPartitionRuntimeLevelStreamingCell::OnPrepareGeneratorPackageForCook() [C:\main-new\Engine\Source\Runtime\Engine\Private\WorldPartition\WorldPartitionRuntimeLevelStreamingCell.cpp:542]
[2026.03.27-14.31.32:121][ 0]LogInit: Display: LogOutputDevice: Error: [CookWorker 1]: [Callstack] 0x00007ffc82a9cbf6 UnrealEditor-Engine.dll!UWorldPartition::PrepareGeneratorPackageForCook() [C:\main-new\Engine\Source\Runtime\Engine\Private\WorldPartition\Cook\WorldPartitionCook.cpp:106]
[2026.03.27-14.31.32:122][ 0]LogInit: Display: LogOutputDevice: Error: [CookWorker 1]: [Callstack] 0x00007ffc82c2d15f UnrealEditor-Engine.dll!FWorldPartitionCookPackageSplitter::PopulateGeneratorPackage() [C:\\main-new\Engine\Source\Runtime\Engine\Private\WorldPartition\WorldPartitionCookPackageSplitter.cpp:161]
[2026.03.27-14.31.32:123][ 0]LogInit: Display: LogOutputDevice: Error: [CookWorker 1]: [Callstack] 0x00007ffcafd8d043 UnrealEditor-UnrealEd.dll!UE::Cook::FGenerationHelper::TryCallPopulateGeneratorPackage() [C:\main-new\Engine\Source\Editor\UnrealEd\Private\Cooker\CookGenerationHelper.cpp:1207]
[2026.03.27-14.31.32:124][ 0]LogInit: Display: LogOutputDevice: Error: [CookWorker 1]: [Callstack] 0x00007ffcb0ec5c8e UnrealEditor-UnrealEd.dll!UCookOnTheFlyServer::BeginCacheObjectsToMove() [C:\main-new\Engine\Source\Editor\UnrealEd\Private\CookOnTheFlyServer.cpp:3781]
[2026.03.27-14.31.32:124][ 0]LogInit: Display: LogOutputDevice: Error: [CookWorker 1]: [Callstack] 0x00007ffcb0efb86f UnrealEditor-UnrealEd.dll!UCookOnTheFlyServer::PrepareSaveGenerationPackage() [C:\main-new\Engine\Source\Editor\UnrealEd\Private\CookOnTheFlyServer.cpp:3668]
[2026.03.27-14.31.32:124][ 0]LogInit: Display: LogOutputDevice: Error: [CookWorker 1]: [Callstack] 0x00007ffcb0efbfb1 UnrealEditor-UnrealEd.dll!UCookOnTheFlyServer::PrepareSaveInternal() [C:\main-new\Engine\Source\Editor\UnrealEd\Private\CookOnTheFlyServer.cpp:4270]
[2026.03.27-14.31.32:124][ 0]LogInit: Display: LogOutputDevice: Error: [CookWorker 1]: [Callstack] 0x00007ffcb0efb502 UnrealEditor-UnrealEd.dll!UCookOnTheFlyServer::PrepareSave() [C:\main-new\Engine\Source\Editor\UnrealEd\Private\CookOnTheFlyServer.cpp:4070]
[2026.03.27-14.31.32:124][ 0]LogInit: Display: LogOutputDevice: Error: [CookWorker 1]: [Callstack] 0x00007ffcb0effedf UnrealEditor-UnrealEd.dll!UCookOnTheFlyServer::PumpRuntimeSaves() [C:\main-new\Engine\Source\Editor\UnrealEd\Private\CookOnTheFlyServer.cpp:5011]
[2026.03.27-14.31.32:126][ 0]LogInit: Display: LogOutputDevice: Error: [CookWorker 1]: [Callstack] 0x00007ffcb0f0f70d UnrealEditor-UnrealEd.dll!UCookOnTheFlyServer::TickMainCookLoop() [C:\main-new\Engine\Source\Editor\UnrealEd\Private\CookOnTheFlyServer.cpp:1560]
[2026.03.27-14.31.32:126][ 0]LogInit: Display: LogOutputDevice: Error: [CookWorker 1]: [Callstack] 0x00007ffcb0f0f446 UnrealEditor-UnrealEd.dll!UCookOnTheFlyServer::TickCookWorker() [C:\main-new\Engine\Source\Editor\UnrealEd\Private\CookOnTheFlyServer.cpp:1536]
[2026.03.27-14.31.32:127][ 0]LogInit: Display: LogOutputDevice: Error: [CookWorker 1]: [Callstack] 0x00007ffcafae8978 UnrealEditor-UnrealEd.dll!UCookCommandlet::CookAsCookWorker() [C:\main-new\Engine\Source\Editor\UnrealEd\Private\Commandlets\CookCommandlet.cpp:726]
[2026.03.27-14.31.32:128][ 0]LogInit: Display: LogOutputDevice: Error: [CookWorker 1]: [Callstack] 0x00007ffcafb076bd UnrealEditor-UnrealEd.dll!UCookCommandlet::Main() [C:\main-new\Engine\Source\Editor\UnrealEd\Private\Commandlets\CookCommandlet.cpp:297]
That asset appears earlier in the log:
LogLinker: Warning: [CookWorker 1]: [AssetLog] \Content\__ExternalActors__\Maps\Production\<asset_path>\E\FM\UH49LTV4Y8EHT3UM4V0TL9.uasset: Error opening file.
LogWorldPartition: Warning: [CookWorker 1]: Package Content for '/Game/__ExternalActors__/Maps/Production/<asset_path>/E/FM/UH49LTV4Y8EHT3UM4V0TL9:
LogOutputDevice: Warning: [CookWorker 1]:
LogWorldPartition: Warning: [CookWorker 1]: Can't find actor /Game/Maps/Production/<asset_path>:PersistentLevel.HLOD_Landscape_000000004a01201a.
note that’s on Worker 1. A few lines later, on worker 0...
LogCook: Warning: [CookWorker 0]: Failed to find file when preloading /Content/__ExternalActors__/Maps/Production/<asset_path>/E/FM/UH49LTV4Y8EHT3UM4V0TL9.uasset.
LogLinker: Warning: [CookWorker 0]: [AssetLog]\Content\__ExternalActors__\Maps\Production\<asset_path>\E\FM\UH49LTV4Y8EHT3UM4V0TL9.uasset: Error opening file.
Is this potentially file contention between the two workers resulting in a failure report…?
[Attachment Removed]
********************************************
Package '/Temp/Content/__ExternalActors__/Maps/Production/<asset_path>/E/FM/UH49LTV4Y8EHT3UM4V0TL9' Summary
--------------------------------------------
Filename: ../../../Content/__ExternalActors__/Maps/Production/<asset_path>/E/FM/UH49LTV4Y8EHT3UM4V0TL9.uasset
File Version: 1017
Engine Version: 5.6.1-919912+++<branch_name>
Compat Version: 5.6.1-919911+++<branch_name>
PackageFlags: 4040
NameCount: 264
NameOffset: 734
ImportCount: 18
ImportOffset: 8066
ExportCount: 9
ExportOffset: 8786
Compression Flags: 0
Custom Versions:
Key=088d7fee-7520-4f94-86c0-f60d9a8f31fa Version = 2 Friendly Name = <engine_name>-Main
Key=0a37729f-acbf-4305-ab7a-d0aad08434d6 Version = 5 Friendly Name = CustomStaticMeshVer
Key=119f88f2-c1c4-4b1f-a2e3-67eef6478431 Version = 3 Friendly Name = CustomSkinningUtilitiesMeshVer
Key=12f88b9f-8875-4afc-a67c-d90c383abd29 Version = 49 Friendly Name = Dev-Rendering
Key=29e575dd-e0a3-4627-9d10-d276232cdcea Version = 17 Friendly Name = Dev-AnimPhys
Key=35f94a83-e258-406c-a318-09f59610247c Version = 41 Friendly Name = Dev-Physics-Ext
Key=59da5d52-1232-4948-b878-597870b8e98b Version = 9 Friendly Name = UE5-SpecialProject
Key=5b4c06b7-2463-4af8-805b-bf70cdf5d0dd Version = 13 Friendly Name = FortniteSeason
Key=601d1886-ac64-4f84-aa16-d3de0deac7d6 Version = 207 Friendly Name = FortniteMain
Key=697dd581-e64f-41ab-aa4a-51ecbeb7b628 Version = 121 Friendly Name = UE5-Main
Key=9c54d522-a826-4fbe-9421-074661b482d0 Version = 44 Friendly Name = Release
Key=9dffbcd6-494f-0158-e221-12823c92a888 Version = 11 Friendly Name = Dev-Enterprise
Key=cffc743f-43b0-4480-9391-14df171d2073 Version = 37 Friendly Name = Dev-Framework
Key=d89b5e42-24bd-4d46-8412-aca8df641779 Version = 56 Friendly Name = UE5-Release
Key=e4b068ed-f494-42e9-a231-da0b2e46bb41 Version = 40 Friendly Name = Dev-Editor
Key=e7086368-6b23-4c58-8439-1b7016265e91 Version = 17 Friendly Name = FortniteRelease
SavedHash: e77c2a45fe2e6d5082bb860705fdb8c2bd2a9442
PersistentGuid: 958E237A49353521D88DE69D87010496
Generations:
0) ExportCount=9, NameCount=264
--------------------------------------------
Packages referenced by /Temp//Content/__ExternalActors__/Maps/Production/<asset_path>/E/FM/UH49LTV4Y8EHT3UM4V0TL9:
0) /Script/Engine
1) /Script/CoreUObject
2) /Game/Shared/HLODs/HLOD_Landscape
3) /Game/Maps/<map_name>
4) /Game/Shared/MaterialLibrary/Bases/HLOD/Landscape/MI_EvergreenLandscapeHLOD
--------------------------------------------
Export Map
==========
*************************
Export 0: 'ActorTextureStreamingBuildDataComponent_0'
Class: 'ActorTextureStreamingBuildDataComponent' (-1)
Parent: '' (0)
Template: '' (0)
Outer: 'HLOD_Landscape_000000004a01201a' (8)
ObjectFlags: 0x00000008
Size: 570
Offset: 12068
Object: NULL
HashNext: -1
bNotForClient: 1
bNotForServer: 1
*************************
Export 1: 'AssetImportData'
Class: 'AssetImportData' (-2)
Parent: '' (0)
Template: '' (0)
Outer: 'SM_HLOD_Landscape_0' (4)
ObjectFlags: 0x00000000
Size: 20
Offset: 12638
Object: NULL
HashNext: -1
bNotForClient: 0
bNotForServer: 0
*************************
Export 2: 'BodySetup_0'
Class: 'BodySetup' (-3)
Parent: '' (0)
Template: '' (0)
Outer: 'SM_HLOD_Landscape_0' (4)
ObjectFlags: 0x00000008
Size: 180
Offset: 12658
Object: NULL
HashNext: -1
bNotForClient: 0
bNotForServer: 0
*************************
Export 3: 'SM_HLOD_Landscape_0'
Class: 'StaticMesh' (-4)
Parent: '' (0)
Template: '' (0)
Outer: '' (0)
ObjectFlags: 0x00000000
Size: 3097
Offset: 12838
Object: NULL
HashNext: -1
bNotForClient: 0
bNotForServer: 0
*************************
Export 4: 'StaticMeshComponent_807'
Class: 'StaticMeshComponent' (-5)
Parent: '' (0)
Template: '' (0)
Outer: 'HLOD_Landscape_000000004a01201a' (8)
ObjectFlags: 0x00000000
Size: 1536
Offset: 15935
Object: NULL
HashNext: -1
bNotForClient: 0
bNotForServer: 1
*************************
Export 5: 'HiResMeshDescription'
Class: 'StaticMeshDescriptionBulkData' (-6)
Parent: '' (0)
Template: '' (0)
Outer: 'SM_HLOD_Landscape_0' (4)
ObjectFlags: 0x00040008
Size: 81
Offset: 17471
Object: NULL
HashNext: -1
bNotForClient: 1
bNotForServer: 1
*************************
Export 6: 'StaticMeshDescriptionBulkData_0'
Class: 'StaticMeshDescriptionBulkData' (-6)
Parent: '' (0)
Template: '' (0)
Outer: 'SM_HLOD_Landscape_0' (4)
ObjectFlags: 0x00000008
Size: 81
Offset: 17552
Object: NULL
HashNext: -1
bNotForClient: 1
bNotForServer: 1
*************************
Export 7: 'HLOD_Landscape_000000004a01201a'
Class: 'WorldPartitionHLOD' (-7)
Parent: '' (0)
Template: '' (0)
Outer: 'PersistentLevel' (-10)
ObjectFlags: 0x00000008
Size: 1350
Offset: 17633
Object: NULL
HashNext: -1
bNotForClient: 0
bNotForServer: 1
*************************
Export 8: 'WorldPartitionHLODSourceActorsFromCell_0'
Class: 'WorldPartitionHLODSourceActorsFromCell' (-8)
Parent: '' (0)
Template: '' (0)
Outer: 'HLOD_Landscape_000000004a01201a' (8)
ObjectFlags: 0x00000000
Size: 1526
Offset: 18983
Object: NULL
HashNext: -1
bNotForClient: 0
bNotForServer: 0
Hi Matt. Here’s the PckInfo for the file in my previous comment. I don’t really know what I’m looking for here.
[Attachment Removed]
Just Windows Defender. But, if it was virus checker related, I’d expect to also see these errors with single-process cook? We’ve done a few dozens comparisons at this point across multiple machines. With multiprocess cook, we see this error (though the exact file failing always differs), without we cook successfully.
In terms of contention, I do notice the final error stack includes a call to “PrepareSave”, which might mean there’s a condition in which the workers do try to write data or something? Just guessing here.
[Attachment Removed]
Okay, I’ll need a few days to try this out, but I can modify these files and see what it reports. Thanks.
[Attachment Removed]
Oookay, well this has seemingly disproven that theory. There are a handful of cases in my current log, but all of them are of the same general shape; “no locking process” according to the logging I added, following immediately by a inability to open the file:
LogLinker: Warning: [CookWorker 0]: No locking process was reported for '../../../<project>/Content/__ExternalActors__/Maps/Production/<map_name>/<map_name>/0/53/AA4LQVQXP4ECOZF00OBFBA.uasset'.
LogLinker: Warning: [CookWorker 0]: [AssetLog] C:\UL\<project>\main-new\<project>\Content\__ExternalActors__\Maps\Production\<map_name>\<map_name>\0\53\AA4LQVQXP4ECOZF00OBFBA.uasset: Error opening file.
LogWorldPartition: Warning: [CookWorker 0]: Package Content for '/Game/__ExternalActors__/Maps/Production/<map_name>/<map_name>/0/53/AA4LQVQXP4ECOZF00OBFBA:
LogOutputDevice: Warning: [CookWorker 0]:
Script Stack (0 frames) :
LogStats: [CookWorker 0]: FPlatformStackWalk::StackWalkAndDump - 1.565 s
LogOutputDevice: Error: [CookWorker 0]: === Handled ensure: ===
LogOutputDevice: Error: [CookWorker 0]:
LogOutputDevice: Error: [CookWorker 0]: Ensure condition failed: false [File:C:\UL\<project>\main-new\Engine\Source\Runtime\Engine\Private\WorldPartition\WorldPartitionLevelHelper.cpp] [Line: 921]
LogOutputDevice: Error: [CookWorker 0]: Failed to find actor 'SplineSubActor_UAID_025041000001BBCC02_1285920173' in package '/Game/__ExternalActors__/Maps/Production/<map_name>/<map_name>/0/53/AA4LQVQXP4ECOZF00OBFBA'.
LogOutputDevice: Error: [CookWorker 0]: Stack:
LogOutputDevice: Error: [CookWorker 0]: [Callstack] 0x00007ff86318b53d UnrealEditor-Engine.dll!``FWorldPartitionLevelHelper::LoadActorsInternal'::`32'::<lambda_2>::operator()'::`105'::<lambda_3>::operator()() [C:\UL\<project>\main-new\Engine\Source\Runtime\Engine\Private\WorldPartition\WorldPartitionLevelHelper.cpp:921]
LogOutputDevice: Error: [CookWorker 0]: [Callstack] 0x00007ff86227e63d UnrealEditor-Engine.dll!`FWorldPartitionLevelHelper::LoadActorsInternal'::`32'::<lambda_2>::operator()() [C:\UL\<project>\main-new\Engine\Source\Runtime\Engine\Private\WorldPartition\WorldPartitionLevelHelper.cpp:923]
LogOutputDevice: Error: [CookWorker 0]: [Callstack] 0x00007ff8622cda44 UnrealEditor-Engine.dll!FWorldPartitionLevelHelper::LoadActorsInternal() [C:\UL\<project>\main-new\Engine\Source\Runtime\Engine\Private\WorldPartition\WorldPartitionLevelHelper.cpp:959]
LogOutputDevice: Error: [CookWorker 0]: [Callstack] 0x00007ff8622ce287 UnrealEditor-Engine.dll!FWorldPartitionLevelHelper::LoadActorsWithPropertyOverridesInternal() [C:\UL\<project>\main-new\Engine\Source\Runtime\Engine\Private\WorldPartition\WorldPartitionLevelHelper.cpp:522]
LogOutputDevice: Error: [CookWorker 0]: [Callstack] 0x00007ff8622d36cd UnrealEditor-Engine.dll!UWorldPartitionRuntimeLevelStreamingCell::OnPrepareGeneratorPackageForCook() [C:\UL\<project>\main-new\Engine\Source\Runtime\Engine\Private\WorldPartition\WorldPartitionRuntimeLevelStreamingCell.cpp:542]
LogOutputDevice: Error: [CookWorker 0]: [Callstack] 0x00007ff862144486 UnrealEditor-Engine.dll!UWorldPartition::PrepareGeneratorPackageForCook() [C:\UL\<project>\main-new\Engine\Source\Runtime\Engine\Private\WorldPartition\Cook\WorldPartitionCook.cpp:106]
LogOutputDevice: Error: [CookWorker 0]: [Callstack] 0x00007ff8622d496f UnrealEditor-Engine.dll!FWorldPartitionCookPackageSplitter::PopulateGeneratorPackage() [C:\UL\<project>\main-new\Engine\Source\Runtime\Engine\Private\WorldPartition\WorldPartitionCookPackageSplitter.cpp:161]
LogOutputDevice: Error: [CookWorker 0]: [Callstack] 0x00007ff85d5d6ed3 UnrealEditor-UnrealEd.dll!UE::Cook::FGenerationHelper::TryCallPopulateGeneratorPackage() [C:\UL\<project>\main-new\Engine\Source\Editor\UnrealEd\Private\Cooker\CookGenerationHelper.cpp:1207]
LogOutputDevice: Error: [CookWorker 0]: [Callstack] 0x00007ff85e75f44d UnrealEditor-UnrealEd.dll!UCookOnTheFlyServer::BeginCacheObjectsToMove() [C:\UL\<project>\main-new\Engine\Source\Editor\UnrealEd\Private\CookOnTheFlyServer.cpp:3789]
LogOutputDevice: Error: [CookWorker 0]: [Callstack] 0x00007ff85e7e0cbf UnrealEditor-UnrealEd.dll!UCookOnTheFlyServer::PrepareSaveGenerationPackage() [C:\UL\<project>\main-new\Engine\Source\Editor\UnrealEd\Private\CookOnTheFlyServer.cpp:3676]
LogOutputDevice: Error: [CookWorker 0]: [Callstack] 0x00007ff85e7e2091 UnrealEditor-UnrealEd.dll!UCookOnTheFlyServer::PrepareSaveInternal() [C:\UL\<project>\main-new\Engine\Source\Editor\UnrealEd\Private\CookOnTheFlyServer.cpp:4278]
LogOutputDevice: Error: [CookWorker 0]: [Callstack] 0x00007ff85e7e04bf UnrealEditor-UnrealEd.dll!UCookOnTheFlyServer::PrepareSave() [C:\UL\<project>\main-new\Engine\Source\Editor\UnrealEd\Private\CookOnTheFlyServer.cpp:4078]
LogOutputDevice: Error: [CookWorker 0]: [Callstack] 0x00007ff85e7eacad UnrealEditor-UnrealEd.dll!UCookOnTheFlyServer::PumpRuntimeSaves() [C:\UL\<project>\main-new\Engine\Source\Editor\UnrealEd\Private\CookOnTheFlyServer.cpp:5023]
LogOutputDevice: Error: [CookWorker 0]: [Callstack] 0x00007ff85e7ebd19 UnrealEditor-UnrealEd.dll!UCookOnTheFlyServer::PumpSaves() [C:\UL\<project>\main-new\Engine\Source\Editor\UnrealEd\Private\CookOnTheFlyServer.cpp:4902]
LogOutputDevice: Error: [CookWorker 0]: [Callstack] 0x00007ff85e81667a UnrealEditor-UnrealEd.dll!UCookOnTheFlyServer::TickMainCookLoop() [C:\UL\<project>\main-new\Engine\Source\Editor\UnrealEd\Private\CookOnTheFlyServer.cpp:1598]
LogOutputDevice: Error: [CookWorker 0]: [Callstack] 0x00007ff85e8161ec UnrealEditor-UnrealEd.dll!UCookOnTheFlyServer::TickCookWorker() [C:\UL\<project>\main-new\Engine\Source\Editor\UnrealEd\Private\CookOnTheFlyServer.cpp:1535]
LogOutputDevice: Error: [CookWorker 0]: [Callstack] 0x00007ff85e832c8e UnrealEditor-UnrealEd.dll!UCookCommandlet::CookAsCookWorker() [C:\UL\<project>\main-new\Engine\Source\Editor\UnrealEd\Private\Commandlets\CookCommandlet.cpp:725]
LogOutputDevice: Error: [CookWorker 0]: [Callstack] 0x00007ff85e839cf2 UnrealEditor-UnrealEd.dll!UCookCommandlet::Main() [C:\UL\<project>\main-new\Engine\Source\Editor\UnrealEd\Private\Commandlets\CookCommandlet.cpp:296]
LogOutputDevice: Error: [CookWorker 0]: [Callstack] 0x00007ff76131a9b2 UnrealEditor-Cmd.exe!FEngineLoop::PreInitPostStartupScreen() [C:\UL\<project>\main-new\Engine\Source\Runtime\Launch\Private\LaunchEngineLoop.cpp:3917]
LogOutputDevice: Error: [CookWorker 0]: [Callstack] 0x00007ff76130fae9 UnrealEditor-Cmd.exe!GuardedMain() [C:\UL\<project>\main-new\Engine\Source\Runtime\Launch\Private\Launch.cpp:146]
LogOutputDevice: Error: [CookWorker 0]: [Callstack] 0x00007ff76130fefa UnrealEditor-Cmd.exe!GuardedMainWrapper() [C:\UL\<project>\main-new\Engine\Source\Runtime\Launch\Private\Windows\LaunchWindows.cpp:145]
LogOutputDevice: Error: [CookWorker 0]: [Callstack] 0x00007ff761313894 UnrealEditor-Cmd.exe!LaunchWindowsStartup() [C:\UL\<project>\main-new\Engine\Source\Runtime\Launch\Private\Windows\LaunchWindows.cpp:299]
LogOutputDevice: Error: [CookWorker 0]: [Callstack] 0x00007ff761326bd4 UnrealEditor-Cmd.exe!WinMain() [C:\UL\<project>\main-new\Engine\Source\Runtime\Launch\Private\Windows\LaunchWindows.cpp:371]
LogOutputDevice: Error: [CookWorker 0]: [Callstack] 0x00007ff7613292fa UnrealEditor-Cmd.exe!__scrt_common_main_seh() [D:\a\_work\1\s\src\vctools\crt\vcstartup\src\startup\exe_common.inl:288]
LogOutputDevice: Error: [CookWorker 0]: [Callstack] 0x00007ff92573e8d7 KERNEL32.DLL!UnknownFunction []
LogOutputDevice: Error: [CookWorker 0]: [Callstack] 0x00007ff92694c40c ntdll.dll!UnknownFunction []
LogOutputDevice: Error: [CookWorker 0]:
This is using Restart Manager to check the file, as instructed.
Interestingly, in this case, the file being referenced actually does not exist. It was deleting over a week ago. I’m not sure what that means for the greater investigation, though.
[Attachment Removed]
This looks really promising to my eye. Will try it out and followup!
[Attachment Removed]
Hi Matt,
So far, so good! I’ve been testing this locally for a few days and have seen good results. There’s a bit of unpredictability here, so I’m not yet 100% sure the issue is resolved, but it’s promising. I’m rolling this out to the rest of the team; assuming I don’t see new occurrences in the next few days, I’ll call this fixed.
Thanks again!
[Attachment Removed]
I believe this issue is resolved by this fix. Thanks!
[Attachment Removed]