-
Notifications
You must be signed in to change notification settings - Fork 363
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
[SymbolStore] Add support to index .NET Framework Runtime debugging modules #4616
[SymbolStore] Add support to index .NET Framework Runtime debugging modules #4616
Conversation
a171274
to
8b86dea
Compare
8b86dea
to
3447506
Compare
You may have already down this, but one way to test this end to end (at for downloading), is the run all the diagnostics repo tests on Windows with test.cmd. That creates some .NET Framework dumps in diagnostics\artifacts\tmp\Debug\dumps\Desktop\net462. Then take the dotnet-symbol built with your changes and run it (dotnet artifacts\bin\dotnet-symbol\Debug\shims\net6.0\dotnet-symbol.dll -o <path-to-put-files> <dump-file>). "clr.dll", "sos.dll" and "mscordacwks.dll" should be downloaded. You may have to use the --internal-server option to download from symweb. |
a5c6f55
to
ca97c6e
Compare
src/tests/Microsoft.SymbolStore.UnitTests/PEFileKeyGenerationTests.cs
Outdated
Show resolved
Hide resolved
src/tests/Microsoft.SymbolStore.UnitTests/PEFileKeyGenerationTests.cs
Outdated
Show resolved
Hide resolved
2064495
to
e94c414
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
👍
- Update Alpine versions (#4589) - Followup 1ES template changes (#4596) - Fix Test Results tab in github UI (#4607) - Move the symstore repo to diagnostics (#4603) - Fix recent Alpine repo build (#4612) - Fix issue #4611 - Switch to cross build for Alpine (#4621) - Add waithandle to --clrevents option (#4624) - Fix SOS unit tests dump generation fixture (#4636) - Fix CONTRACT return type (#4649) - [SymbolStore] Add support to index .NET Framework Runtime debugging modules (#4616) - [test][SOS] Disable OtherCommands Dumpmt test on Alpine (#4656) - Supports collecting GCSettingsEvent for gc-collect profile (#4615) - Update ipc-protocol.md (#4658) - Fixing a case where we should set the RundownKeyword (#4662) - Fix versioning of symstore ported assets (#4670) - Add ubuntu 22.04 testing. Update 6,7 and 8 runtime versions (#4676) - Update locker action version to update node version (#4682) - Use managed identity for blob upload of release assets (#4680) - Remove the symweb symbol server support (#4694) - [RISC-V] Add gcinfodumper implementation. (#4703) - Fix `pathto` SOS command. (#4706) - Add support for new exception trace storage format (#4635) - Change SOS breaking change from warning to error; better dotnet-dump target errors (#4713) - [Symbol] Add manifest generator (#4693) - Remove references to obsolete storage account variables (#4719) - Update DIA to 17.10.0-beta1.24272.1 (#4683) - Reenable SDL requirements (#4722) --------- Co-authored-by: dotnet-maestro[bot] <42748379+dotnet-maestro[bot]@users.noreply.github.com> Co-authored-by: dotnet-maestro[bot] <dotnet-maestro[bot]@users.noreply.github.com> Co-authored-by: Rich Lander <rlander@microsoft.com> Co-authored-by: Mike McLaughlin <mikem@microsoft.com> Co-authored-by: Jan Vorlicek <janvorli@microsoft.com> Co-authored-by: Grégoire <gregoire.verdier@gmail.com> Co-authored-by: Tom McDonald <tommcdon@microsoft.com> Co-authored-by: Mitchell Hwang <16830051+mdh1418@users.noreply.github.com> Co-authored-by: Andrew Au <andrewau@microsoft.com> Co-authored-by: Noah Falk <noahfalk@users.noreply.github.com> Co-authored-by: Mikhail Kurinnoi <m.kurinnoi@samsung.com> Co-authored-by: Matt Mitchell <mmitche@microsoft.com>
- Update Alpine versions (#4589) - Followup 1ES template changes (#4596) - Fix Test Results tab in github UI (#4607) - Move the symstore repo to diagnostics (#4603) - Fix recent Alpine repo build (#4612) - Fix issue #4611 - Switch to cross build for Alpine (#4621) - Add waithandle to --clrevents option (#4624) - Fix SOS unit tests dump generation fixture (#4636) - Fix CONTRACT return type (#4649) - [SymbolStore] Add support to index .NET Framework Runtime debugging modules (#4616) - [test][SOS] Disable OtherCommands Dumpmt test on Alpine (#4656) - Supports collecting GCSettingsEvent for gc-collect profile (#4615) - Update ipc-protocol.md (#4658) - Fixing a case where we should set the RundownKeyword (#4662) - Fix versioning of symstore ported assets (#4670) - Add ubuntu 22.04 testing. Update 6,7 and 8 runtime versions (#4676) - Update locker action version to update node version (#4682) - Use managed identity for blob upload of release assets (#4680) - Remove the symweb symbol server support (#4694) - [RISC-V] Add gcinfodumper implementation. (#4703) - Fix `pathto` SOS command. (#4706) - Add support for new exception trace storage format (#4635) - Change SOS breaking change from warning to error; better dotnet-dump target errors (#4713) - [Symbol] Add manifest generator (#4693) - Remove references to obsolete storage account variables (#4719) - Update DIA to 17.10.0-beta1.24272.1 (#4683) - Reenable SDL requirements (#4722) - Disable CG on musl leg due to lack of proper support (#4726) - Update SOS breaking change version for Exception's _stackTrace changes in .NET 9 (#4733)
SymbolStoreKey
generators (*FileKeyGenerator
) currently do not support .NET Framework scenarios which contain a different runtime module (clr.dll
) than .NET Core scenarios (coreclr.dll
). This PR aims to update thePEFileKeyGenerator
to support generatingSymbolStoreKey
s for debugging modules used to debug the .NET Frameworkclr.dll
runtime.Before
After
This PR does the following:
GetSpecialFiles
logicsos.dll
as a "special file" as it is not indexed under runtime module properties.NET Framework runtime module, DAC module, DBI module, SOS module indexing
clr.dll - identity
mscordbi.dll - identity + clr properties
mscordacwks.dll - identity + clr properties
mscordacwks_(long).dll - identity + clr properties
sos.dll - identity
sos_(long).dll - identity + clr properties
.NET Core runtime module, DAC module, DBI module indexing
coreclr.dll - identity
mscordbi.dll - identity + coreclr properties
mscordacwks.dll - identity + coreclr properties
mscordacwks_(long).dll - identity + coreclr properties
Running dotnet-symbol on
SOS.DotnetDumpCommands.Heap.dumpgen.dmp