Unreal Engine debugger shows unknown location in call stacks

When debugging in Unreal Engine, I noticed that the debugger sometimes shows no information about where the thread is exactly. This happens very often with worker threads. For example, I'm now facing a crash in a worker thread and it's impossible for me to know where it's coming from because I have no call stack (all that Rider shows me is an entry that says `<unknown>` followed by a memory address).

I also noticed that this can happen with the Game thread too. For example, sometimes, I'll be presented with a call stack where the last entry of it, the point where the thread is, is also marked as `<unknown>`, even though the preceding calls are shown correctly. Anyone know why this happens, or if there is a fix for it?

0
2 comments

Hello Pablo,

Thank you for contacting Rider support.

To take a closer look at the issue, we will need some additional information:

  • What exact engine version you use and tell me whether it is built from sources or installed from launcher;
  • Go to Help | Diagnostic tools | Choose Trace Scenarios;
  • Enable the trace scenario for Debugger;
  • Reproduce the issue;
  • Make several screenshots that demonstrate the issue;
  • Collect the full log bundle via Help | Collect Logs and Diagnostic Data;
  • Disable the trace scenarios enabled;
  • Upload logs bundle and screenshots to our server and share the upload ID.

Thank you in advance and have a great day!

1

Hi Dmitry,

Thank you for reaching out and sorry for the late reply, it took me a while to get to this.

I'm running engine version 5.4.4. It was installed from launcher.

The upload ID of the bundle is 2025_01_14_Si2PPcNnefzpBQXZghwPmh. As you can see, it includes the requested diagnostic data, as well as a screenshot of how the stack looks like when using the debugger. All the functions in the stack trace, except the last, where the execution is, are correctly identified. It's the last one (which is problematic because it is exactly where the exception happens) that cannot be correctly identified and is marked as “unknown”. Although I cannot guarantee it because of the lack of information given by the debugger, I suspect that that last function is somewhere in my code (not the engine's code).

In case it helps, this crash is caused by explicitly calling `Destroy()` over an actor in one of my automation tests. I figured this out by trial and error.

Please, let me know if you can reproduce something similar on your end, what could be the causes for this to happen and if there's any workaround for it.

Thank you!

0

Please sign in to leave a comment.