Author |
Topic |
|
Demianu
New Member
Canada
6 Posts |
Posted - May 27 2024 : 4:28:01 PM
|
Hi!
A search for references in Unreal Engine project never ends, cannot be stopped, and finally crashes the Visual Studio.
I've got the logs from my last attempt.
Going to downgrade to 2515. |
|
feline
Whole Tomato Software
United Kingdom
19039 Posts |
Posted - May 28 2024 : 08:19:54 AM
|
Obviously this isn't supposed to happen, and isn't happening for me.
First just to double check, you are running a VA Find References?
Which version of Visual Studio are you using? If you have the time I will ask you to install VA 2520 into a test profile, so I can get you to run some simple tests of this problem, without having to change the installed version of VA on your main profile, where you are working. The instructions are slightly different for different versions of Visual Studio, so knowing the version and edition (community, professional, enterprise) means I can give you the exact instructions to begin with. |
zen is the art of being at one with the two'ness |
|
|
Demianu
New Member
Canada
6 Posts |
Posted - May 28 2024 : 12:02:40 PM
|
I am running Visual Studio Professional 2017. And yes, the problem shows itself when using VA Find References.
By "test profile" you mean another user profile?
We can try that, although I have some doubts that running simple tests would yield that result (you guys probably run them when testing), since what I observed in status bar was a loop of messages like "VA: creating instance of template BlaBla<P1, P2, P3, P4 ... P40>", where the template had ridiculously long declaration.
Looking at the va.log, I can see a lot of warnings related to some boost classes, where class names look pretty suspicious:
|
|
|
feline
Whole Tomato Software
United Kingdom
19039 Posts |
Posted - May 28 2024 : 12:22:27 PM
|
So is this problem symbol specific? This does scream some template problems.
You mention going back to VA 2515, so does this mean the problem is specific to the new version of VA? If this is caused by templates we are having problems with, I would not expect the version of VA to matter, but of course it might.
Yes, I am thinking of a test profile. This makes sense if the problem is VA 2520 specific, so we can try VA 2520 in the test profile, leaving you with the working VA 2515 for normal work. But if instead this problem is tied to specific difficult boost code then trying to understand what you are doing with the code will be more important. I might be able to find a work around for the problem code, if I can reproduce the problem here. |
zen is the art of being at one with the two'ness |
|
|
Demianu
New Member
Canada
6 Posts |
Posted - May 28 2024 : 12:45:50 PM
|
The problem seems to be related to latest changes in 2520 which are stated as
quote: NEW Greatly improved find references results speed.
With 2515 I can search for references with no issues.
I am working with Unreal Engine 4.20.3, so the problem can be easily reproduced if you get the Engine sources from the GitHub and just load the UE4 solution, no other project needs to be made.
If you go this route, I suggest you open UE_4.20\Engine\Source\Runtime\Engine\Classes\Engine\EngineTypes.h and search for references to enum ECollisionChannel. There will be quite a few, but with VA 2515 the search will complete, while with VA 2520 the Studio will eventually crash.
Hope this helps. |
|
|
feline
Whole Tomato Software
United Kingdom
19039 Posts |
Posted - May 28 2024 : 1:51:24 PM
|
Using UE 4.27 downloaded from the Epic Games Launcher, so pre-compiled, with VS2019 and VA 2520, running Find References on this symbol works correctly, no unreasonably long run time and no crash.
So I will see about downloading the source code, and see if I can easily point an existing solution at the download, to save having to compile it to get a solution. |
zen is the art of being at one with the two'ness |
|
|
Demianu
New Member
Canada
6 Posts |
Posted - May 28 2024 : 2:12:26 PM
|
Oh, you don't need to compile the UE, just run GenerateProjectFiles.bat from the UE_4.20 directory and you'll get the VS solution. |
|
|
Demianu
New Member
Canada
6 Posts |
|
feline
Whole Tomato Software
United Kingdom
19039 Posts |
Posted - May 29 2024 : 08:05:16 AM
|
I am already registered with Epic, and have a different version of the source code downloaded and compiled from github.
So, I have told the GitHub Desktop client to switch my UE branch to version 4.20, which it has done. I got a very vague and confusing error message, but checking the file:
F:\src_github\UnrealEngine\Engine\Source\Runtime\Launch\Resources\Version.h
it is reporting version 4.20.3 so that should be enough.
When I then run "F:\src_github\UnrealEngine\GenerateProjectFiles.bat" I just get an error message:
Setting up Unreal Engine 4 project files...
GenerateProjectFiles ERROR: It looks like you're missing some files that are required in order to generate projects. Please check that you've downloaded and unpacked the engine source code, binaries, content and third-party dependencies before running this script.
Honestly, not much use.
So for now I have just told the Epic Games Launcher to download version 4.20.3, to see if that will get me a SLN I can load and test. |
zen is the art of being at one with the two'ness |
|
|
Demianu
New Member
Canada
6 Posts |
Posted - May 29 2024 : 12:29:04 PM
|
I just tested VA 2520 with a template project created from a stock UE 4.20 downloaded through Epic Launcher.
The issue is reproducible. VA was searching for references to ECollisionChannel for about 15 minutes and then Visual Studio restarted.
I hope you would be able to do the same. |
|
|
feline
Whole Tomato Software
United Kingdom
19039 Posts |
Posted - May 29 2024 : 12:47:48 PM
|
I am seeing the crash here. I think I have also seen it in a more current version of Unreal Engine, but I need to double check and confirm that. Running several tests without taking sufficiently detailed notes. |
zen is the art of being at one with the two'ness |
|
|
feline
Whole Tomato Software
United Kingdom
19039 Posts |
Posted - May 31 2024 : 08:49:35 AM
|
So far I am only able to reproduce on demand with UE 4.20. I have put in a bug report for this:
case=164595
I will see if I can start to pin down the actual trigger in code, but that could take a little while. Still, it offers the possibility of a work around, but that won't scale well across different code bases that run into this problem. |
zen is the art of being at one with the two'ness |
|
|
|
Topic |
|