-
-
Notifications
You must be signed in to change notification settings - Fork 10
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Symbols aren't loaded sometimes #17
Comments
Thanks for the report. I can't tell exactly what happens here, as I haven't experienced this myself yet.
Caching is supposed to work mostly for symbols that are downloaded on internet. Disabling it would cause massive slowdown when resolving symbols.
Could you elaborate exactly which symbols? Which assemblies/native DLLs are actually concerned? Is it user code (your assemblies), NuGet assemblies, OS DLLs? Anything that could help narrow down the issue. There is a possibility to output what is happening in the symbol resolver, it's verbose so I haven't added it by default, but I could add a mode to store the log on disk to investigate such issues. |
Also, is it when you are profiling an app directly launched via ultra or a long running process? |
There isn't a log file so I don't know exactly what symbols aren't loaded. The profiler view is really minimal, only showing memory allocations, so perhaps I could say "all of them". I am profiling an app directly launched, i.e. |
The JSON won't help. The log file doesn't exist today because as I said, I don't write it for symbols 🙂
Whenever I test ultra, I'm testing it against https://github.com/xoofx/ultra/tree/main/src/Ultra.Example which works. Could you try it on your machine? What is different with this |
I have found steps to reproduce:
TS.NET.Engine is a console app, source |
.NET 9, Windows 10. |
I tried Ultra.Example on both .NET 8 and .NET 9, and my steps to reproduce did not work. I am out of ideas for now. |
This is not expected. Are you hitting
Cool, I can try from there directly, let's see |
Running with
|
Open up |
A new day allowed me to look at this with fresh critical eyes: I realized my muscle memory was opening an Administrator PowerShell prompt, not an Administrator Command prompt. I found that CTRL+C in CMD is fine, and continues working. |
When you say PS, is it pwsh (the .NET core version) or the old PS Windows? I'm only running from pwsh and CTRL+C is working fine there. |
As per title - symbols aren't loaded sometimes (making a typical ~1000KB json.gz file into a ~160KB file that isn't very useful in the viewer).
I tried various things, such as rebuilding the application-to-be-profiled, deleting the symbol cache folder that I could find (in appdata). The only thing that made it work again is restarting my PC. Perhaps #13 had a similar resolution.
I noticed that after the restart, ultra showed many more symbols loaded, perhaps there could be a flag to not use the cached symbols?
The text was updated successfully, but these errors were encountered: