Silent 5.5 assert/crash in UnrealBuildAccelerator when trying to run dump_syms.exe for Linux build. Fixed in 5.6?

Hello!

We’ve been trying to track down a issue where our Linux server crash reports were reporting non-sensical callstacks. We narrowed it down to stale .psym/.sym files on our build machines.

When digging into the issue, we discovered that the Link-OnyxServer-Linux-Test.link.bat script was failing, specifically when attempting to run dump_syms.exe (to produce the .psym file).

We noted that we could run dump_syms.exe manually and it succeeded no problem. After modifying LinuxToolChain.cs/LinuxToolChain::GetDumpEncodeDebugCommand()/Link-OnyxServer-Linux-Test.link.bat to not quiet error logging we were able to see the above assert/crash.

We were able to work around this by disabling UBA via bAllowUBAExecutor/bAllowUBALocalExecutor. We also were able to workaround this by using the 5.6 UBA binaries instead.

So I guess my question here is: Is it safe to utilize all the 5.6 UBA binaries with 5.5? UBA is a little bit of a blackbox to me, and I am just wanting to be sure I’m not introducing potential other issues.

As you can probably tell (from the .bat/.exe references), we’re building from Windows for Linux.

Steps to Reproduce
For us, it’s as simple as building our project for “Test Server” on Linux (after properly setting up the appropriate cross-compile toolchain, etc.)

Hi Mike,

yes it should be safe to take as new uba as possible. I am really trying to keep it backwards compatible and fixes/improvements are constantly flowing in.

Inside Epic we are currently having huge problems with memory on our build machines (Fortnite is a beast).. so there has been quite a lot of opts related to memory and especially when having compressed obj files enabled