dotnet / dotnet/diagnostics

Change the missing "special" coreclr indexed binaries to warnings

Open
#4,630 0 comments 0 reactions 1 assignee Claimed by @mikem8361 View on GitHub
enhancement
Dominant language
C++
Stars
1.3k
Forks
404
Avg merge
2d 5h
Merged PRs (30d)
35

Description

The user experience isn't all that great when dotnet-symbol is downloading missing special files indexed coreclr's like sos.dll, libsos.so, etc. This is only could get worse if/when we add the new cross-OS DAC to the list.

```
Downloading from http://msdl.microsoft.com/download/symbols/
Writing files to c:\temp\symout
Writing: c:\temp\symout\coreclr.dll
Writing: c:\temp\symout\coreclr.pdb
Writing: c:\temp\symout\mscordaccore.dll
Writing: c:\temp\symout\mscordbi.dll
ERROR: HttpSymbolStore: 404 Not Found 'http://msdl.microsoft.com/download/symbols/sos.dll%2F5e211dac56b000%2Fsos.dll'
ERROR: HttpSymbolStore: 404 Not Found 'http://msdl.microsoft.com/download/symbols/sos.netcore.dll%2F5e211dac56b000%2Fsos.netcore.dll'
Writing: c:\temp\symout\mscordaccore_amd64_amd64_4.700.20.6602.dll
ERROR: HttpSymbolStore: 404 Not Found 'http://msdl.microsoft.com/download/symbols/sos_amd64_amd64_4.700.20.6602.dll%2F5e211dac56b000%2Fsos_amd64_amd64_4.700.20.6602.dll'
```

One solution is turn this ERRORs into warnings which are not printed unless the -d option is passed. Implementing this isn't easy because the errors happen in the HttpSymbolStore but only the key generators know what SymbolStoreKey's are these special indexed ones. The SymbolStoreKey.IsClrSpecialFile flag is only set on the identity keys not the special ones. A new flag that indicates "warning on download error" needs to be passed from the various key generators to the SymbolStoreKey constructor. It would be nice to include this new flag with the existing IsClrSpecialFile.

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.