-
Notifications
You must be signed in to change notification settings - Fork 2.2k
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
Update guidance for Portable PDB in 4.7.1 #607
Conversation
@rpetrusha @vivmishra @tmat - PTAL |
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.
I've left a couple of suggestions for changes, @noahfalk.
## Symptoms | ||
|
||
An application that formats stack traces is missing source information for some or all frames. This includes stack traces formatted via [System.Exception.ToString()](https://docs.microsoft.com/en-us/dotnet/api/system.exception.tostring?view=netframework-4.7.1), [System.Exception.StackTrace](https://docs.microsoft.com/en-us/dotnet/api/system.exception.stacktrace?view=netframework-4.7.1) and [System.Diagnostics.StackTrace.ToString()](https://docs.microsoft.com/en-us/dotnet/api/system.diagnostics.stacktrace.tostring?view=netframework-4.7.1). | ||
The frames missing source information must reside in assemblies that have pdbs in the [Portable PDB format](https://github.com/dotnet/core/blob/master/Documentation/diagnostics/portable_pdb.md) present on disk. |
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.
Since you're describing symptoms here, "must" is not necessary.
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.
My goal here was to qualify when you might be observing this issue vs. some other issue. For example you could build assemblies with any format pdb and then not put pdb on disk and you would observe the same missing source lines. However in that case you aren't hitting this issue, you are just failing to deploy your PDBs. I wanted to help people avoid some likely misdiagnosis.
Do you still I think I should remove 'must' or maybe phrase this a different way? I considered phrasing it as 'you observe symptom when condition is true' but it made a very long sentence whereas "must" helped me break the sentence apart. "You observe symptom. condition must be met."
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.
Basically, symptoms defines the two conditions that must be present for this issue to apply. So in that sense, the "must" is not necessary. So the intent is already clear. I think the sentence reads much better with it removed. But I'll leave it up to you to decide, @noahfalk.
|
||
## Cause | ||
|
||
The .NET Framework 4.7.1 added support for detecting and parsing the Portable PDB file format to show file and line number information in stack traces. However due to an unfortunate [implementation issue](https://github.com/Microsoft/dotnet/blob/master/releases/net471/KnownIssues/517815-BCL%20Applications%20making%20heavy%20use%20of%20System.Diagnostics.StackTrace%20might%20run%20more%20slowly%20on%20.NET%204.7.1.md) the feature introduced unacceptable performance impact for some customers and Microsoft intentionally disabled it. |
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.
commas after:
- However
- implementation issue
- customers
impacts can't be introduced; better: "this feature had an unacceptable performance impact"
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.
Remove "unfortunate"
|
||
## Workarounds | ||
|
||
- If you are in control of the build process for the problematic assemblies you may be able to configure it to generate the classic Windows PDB format instead. |
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.
If you are in control --> If you control
comma after assemblies
@@ -0,0 +1,19 @@ | |||
# Stack traces are missing source information for frames with debug information in the Portable PDB format when running on .Net Framework 4.7.1 |
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.
Make all instances of ".Net" --> ".NET"
|
||
## Resolution | ||
|
||
A fix is anticipated for .Net Framework 4.7.2 that restores Portable PDB functionality with greatly improved performance. |
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.
Suggestion: Replace 'for' --> 'in': A fix is anticipated in .NET Framework 4.7.2, in near future, that restores ... ...
Early access for 4.7.2 goes live on 2/5 -- we can then append the reference to it and suggest folks to go try the product for feature again.
The PR is https://github.com/Microsoft/dotnet-framework-early-access/pull/10
Thanks to you both! I've updated the PR with most of the feedback but I did have an outstanding question for Ron on "must". Ron if my explanation above makes sense I'm happy to have you apply whatever adjustment seems appropriate. On consultation with Tomas I removed the workaround for using the converter and we'll put it back once he has documentation in better shape. |
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.
LGTM
"Must" is out of there : ) |
I don't have permission to merge though. |
* Corrected category to remove duplication, generated readme (#542) * Fixed bad links (#543) * Making relative link use home operation (#544) * Link fixes (#545) * fixed xrefs and links * reverted change * Update the issue with the list of types potentially impacted (#538) * Update the issue with the list of types potentially impacted * Update 510901-BCL Apps targeting .NET-4.6.1 that use .NET Standard libraries might be broken when running on .NET 4.7.1.md * Update 510901-BCL Apps targeting .NET-4.6.1 that use .NET Standard libraries might be broken when running on .NET 4.7.1.md * Update 510901-BCL Apps targeting .NET-4.6.1 that use .NET Standard libraries might be broken when running on .NET 4.7.1.md * Update 510901-BCL Apps targeting .NET-4.6.1 that use .NET Standard libraries might be broken when running on .NET 4.7.1.md * Update 510901-BCL Apps targeting .NET-4.6.1 that use .NET Standard libraries might be broken when running on .NET 4.7.1.md (#546) * Add Neutronium reference (#547) * Adding Neutronium link * As by PR * Create 521954 - BCL CultureAwareComparer with ignore casing on serial… (#553) * Create 521954 - BCL CultureAwareComparer with ignore casing on serialized on previous versions of .NET do not correctly deserialize on .NET 4.7.1.md * Update 521954 - BCL CultureAwareComparer with ignore casing on serialized on previous versions of .NET do not correctly deserialize on .NET 4.7.1.md * Update 521954 - BCL CultureAwareComparer with ignore casing on serialized on previous versions of .NET do not correctly deserialize on .NET 4.7.1.md * Update known issues for #521954 * Update 521954 - BCL CultureAwareComparer with ignore casing on serial… (#555) * Update 521954 - BCL CultureAwareComparer with ignore casing on serialized on previous versions of .NET do not correctly deserialize on .NET 4.7.1.md * Update 521954 - BCL CultureAwareComparer with ignore casing on serialized on previous versions of .NET do not correctly deserialize on .NET 4.7.1.md * Update 521954 - BCL CultureAwareComparer with ignore casing on serialized on previous versions of .NET do not correctly deserialize on .NET 4.7.1.md (#558) LGTM * Update 521954 - BCL CultureAwareComparer with ignore casing on serialized on previous versions of .NET do not correctly deserialize on .NET 4.7.1.md * Typo fix (#554) * Add known issue for 523633 (#559) * Add known issue for 523633 * Add known issue for 523633 * Fixes for review comments for 523633 * Fixes for review comments for 523633 * Changes so content syncs with PR #3686 in dotnet/docs (#561) * Added Core WF and Orleans.Activities (#562) * Update platforms.json Update .NET Core entries to include the November Update release. * Added release notes for 6.0.2 * Update README.md * Update README.md * Update README.md * Adding Known Issue for the 471 stack trace perf issue (#567) * Adding Known Issue for the 471 stack trace perf issue * Incorporated review comments * Update dotnet471-known-issues.md * Add ServicetStack to frameworks list (#574) Adding in link to the ServiceStack web framework (which I am not involved with or a representative of, but that I use and have contributed minor tweaks to) * Miscellanous formatting fixes (#573) * Miscellanous formatting fixes * Corrected quirked/build time break sections * 2.0.2 release notes * 1.7.2 release notes * readability fixes * Resolving PR feedback * Resolving PR feedback * Resolving PR feedback * Converted asset IDs to xrefs, corrected formatting (#581) * Add .NET 4.7.1 Networking known issue 534719 (#580) * Add .NET 4.7.1 Networking known issue 534719 Add known issue document for bug 534719-Networking ServicePoint.ConnectionLimit default behavior with loopback changed unexpectedly. * Addressed PR feedback * Removed duplicate words (#583) * Add release notes for UWP 6.0.5 * Add more consistency to net-native1.7 readme * Replaced unprintable characters. (#586) * Fixed links broken in dotnet/docs (#588) * Updated the readme with the 5.2.4 release. * Updated README with the 5.3.5 release * Updated the README with the 5.4.2 release * Updated README with 6.0.6 release. * Added the link for ZDP update for Known Issues fixed by it. (#595) * Added the link for ZDP update for Known Issues fixed by it. * Added platform information * Added Switch.System.Net.DontEnableSystemDefaultTlsVersions AppContext switch (#603) * Replaced MSDN link with link to docs.microsoft.com * Corrected typos * Added Switch.System.Net.DontEnableSystemDefaultTlsVersions switch * Clarify Portable PDB feature disabled in 4.7.1 (#606) * Update guidance for Portable PDB in 4.7.1 (#607) * Update guidance for Portable PDB in 4.7.1 * Address review feedback * More review feedback * Added new known issue for 517815-BCL * Add known issue for 470006 - GC large object crashes Added a known issue, written by Chris Ahna, about GC crashes when we have a high rate of large object allocations and frees. * Updated to include proposed changes from review * Updated to incorporate feedback * fixed formatting (#614) * fixed formatting (hopefully) * Fixed links broken after migration * Documented two .NET Framework 4.6 app compat switches (#615) * Documented DontEnableSchSendAuxRecord switch * added note * added second switch * Finished documenting switches * Added readme * Fixed formatting issues * Adding additional fix info (#616) * Adding additional fix info Adding info for the Fall Creators Update patch * Update 517815-BCL Applications making heavy use of System.Diagnostics.StackTrace might run more slowly on .NET 4.7.1.md * Update 517815-BCL Applications making heavy use of System.Diagnostics.StackTrace might run more slowly on .NET 4.7.1.md Fixing links (copy/pasting doesn't format them correctly) * Update 517815-BCL Applications making heavy use of System.Diagnostics.StackTrace might run more slowly on .NET 4.7.1.md Minor changes * Update .NET UWP release notes for 6.0.7 release * fixed based on feedback. * Fix inline code span (#618) * Fix inline code ' -> ` * Update wpf-selector-crash-when-removing-item-from-custom-collection.md * Fixed formatting of opening XML tag (#622) * Update known issue 517815-BCL Stack traces are missing source information (#623) * Update 517815-BCL Stack traces are missing source information for frames with debug information in the Portable PDB format.md Add the portable PDB conversion tool as a workaround now that it is better documented how to use it. * Update 517815-BCL Stack traces are missing source information for frames with debug information in the Portable PDB format.md PR feedback * Assorted changes (#625) * Assorted changes * Removed remaining occurences of 'en-us' * Removed comments (#628) * Fix compat doc links (#632) * ~/docsframework -> ~/docs/framework * fix bookmark: #Networking.md -> #Networking * fix bookmark: #mitigation.md -> #mitigation * Fixing index.md URI (#633)
* Corrected category to remove duplication, generated readme (#542) * Fixed bad links (#543) * Making relative link use home operation (#544) * Link fixes (#545) * fixed xrefs and links * reverted change * Update the issue with the list of types potentially impacted (#538) * Update the issue with the list of types potentially impacted * Update 510901-BCL Apps targeting .NET-4.6.1 that use .NET Standard libraries might be broken when running on .NET 4.7.1.md * Update 510901-BCL Apps targeting .NET-4.6.1 that use .NET Standard libraries might be broken when running on .NET 4.7.1.md * Update 510901-BCL Apps targeting .NET-4.6.1 that use .NET Standard libraries might be broken when running on .NET 4.7.1.md * Update 510901-BCL Apps targeting .NET-4.6.1 that use .NET Standard libraries might be broken when running on .NET 4.7.1.md * Update 510901-BCL Apps targeting .NET-4.6.1 that use .NET Standard libraries might be broken when running on .NET 4.7.1.md (#546) * Add Neutronium reference (#547) * Adding Neutronium link * As by PR * Create 521954 - BCL CultureAwareComparer with ignore casing on serial… (#553) * Create 521954 - BCL CultureAwareComparer with ignore casing on serialized on previous versions of .NET do not correctly deserialize on .NET 4.7.1.md * Update 521954 - BCL CultureAwareComparer with ignore casing on serialized on previous versions of .NET do not correctly deserialize on .NET 4.7.1.md * Update 521954 - BCL CultureAwareComparer with ignore casing on serialized on previous versions of .NET do not correctly deserialize on .NET 4.7.1.md * Update known issues for #521954 * Update 521954 - BCL CultureAwareComparer with ignore casing on serial… (#555) * Update 521954 - BCL CultureAwareComparer with ignore casing on serialized on previous versions of .NET do not correctly deserialize on .NET 4.7.1.md * Update 521954 - BCL CultureAwareComparer with ignore casing on serialized on previous versions of .NET do not correctly deserialize on .NET 4.7.1.md * Update 521954 - BCL CultureAwareComparer with ignore casing on serialized on previous versions of .NET do not correctly deserialize on .NET 4.7.1.md (#558) LGTM * Update 521954 - BCL CultureAwareComparer with ignore casing on serialized on previous versions of .NET do not correctly deserialize on .NET 4.7.1.md * Typo fix (#554) * Add known issue for 523633 (#559) * Add known issue for 523633 * Add known issue for 523633 * Fixes for review comments for 523633 * Fixes for review comments for 523633 * Changes so content syncs with PR #3686 in dotnet/docs (#561) * Added Core WF and Orleans.Activities (#562) * Update platforms.json Update .NET Core entries to include the November Update release. * Added release notes for 6.0.2 * Update README.md * Update README.md * Update README.md * Adding Known Issue for the 471 stack trace perf issue (#567) * Adding Known Issue for the 471 stack trace perf issue * Incorporated review comments * Update dotnet471-known-issues.md * Add ServicetStack to frameworks list (#574) Adding in link to the ServiceStack web framework (which I am not involved with or a representative of, but that I use and have contributed minor tweaks to) * Miscellanous formatting fixes (#573) * Miscellanous formatting fixes * Corrected quirked/build time break sections * 2.0.2 release notes * 1.7.2 release notes * readability fixes * Resolving PR feedback * Resolving PR feedback * Resolving PR feedback * Converted asset IDs to xrefs, corrected formatting (#581) * Add .NET 4.7.1 Networking known issue 534719 (#580) * Add .NET 4.7.1 Networking known issue 534719 Add known issue document for bug 534719-Networking ServicePoint.ConnectionLimit default behavior with loopback changed unexpectedly. * Addressed PR feedback * Removed duplicate words (#583) * Add release notes for UWP 6.0.5 * Add more consistency to net-native1.7 readme * Replaced unprintable characters. (#586) * Fixed links broken in dotnet/docs (#588) * Updated the readme with the 5.2.4 release. * Updated README with the 5.3.5 release * Updated the README with the 5.4.2 release * Updated README with 6.0.6 release. * Added the link for ZDP update for Known Issues fixed by it. (#595) * Added the link for ZDP update for Known Issues fixed by it. * Added platform information * Added Switch.System.Net.DontEnableSystemDefaultTlsVersions AppContext switch (#603) * Replaced MSDN link with link to docs.microsoft.com * Corrected typos * Added Switch.System.Net.DontEnableSystemDefaultTlsVersions switch * Clarify Portable PDB feature disabled in 4.7.1 (#606) * Update guidance for Portable PDB in 4.7.1 (#607) * Update guidance for Portable PDB in 4.7.1 * Address review feedback * More review feedback * Added new known issue for 517815-BCL * Add known issue for 470006 - GC large object crashes Added a known issue, written by Chris Ahna, about GC crashes when we have a high rate of large object allocations and frees. * Updated to include proposed changes from review * Updated to incorporate feedback * fixed formatting (#614) * fixed formatting (hopefully) * Fixed links broken after migration * Documented two .NET Framework 4.6 app compat switches (#615) * Documented DontEnableSchSendAuxRecord switch * added note * added second switch * Finished documenting switches * Added readme * Fixed formatting issues * Adding additional fix info (#616) * Adding additional fix info Adding info for the Fall Creators Update patch * Update 517815-BCL Applications making heavy use of System.Diagnostics.StackTrace might run more slowly on .NET 4.7.1.md * Update 517815-BCL Applications making heavy use of System.Diagnostics.StackTrace might run more slowly on .NET 4.7.1.md Fixing links (copy/pasting doesn't format them correctly) * Update 517815-BCL Applications making heavy use of System.Diagnostics.StackTrace might run more slowly on .NET 4.7.1.md Minor changes * Update .NET UWP release notes for 6.0.7 release * fixed based on feedback. * Fix inline code span (#618) * Fix inline code ' -> ` * Update wpf-selector-crash-when-removing-item-from-custom-collection.md * Fixed formatting of opening XML tag (#622) * Update known issue 517815-BCL Stack traces are missing source information (#623) * Update 517815-BCL Stack traces are missing source information for frames with debug information in the Portable PDB format.md Add the portable PDB conversion tool as a workaround now that it is better documented how to use it. * Update 517815-BCL Stack traces are missing source information for frames with debug information in the Portable PDB format.md PR feedback * Assorted changes (#625) * Assorted changes * Removed remaining occurences of 'en-us' * Removed comments (#628) * Fix compat doc links (#632) * ~/docsframework -> ~/docs/framework * fix bookmark: #Networking.md -> #Networking * fix bookmark: #mitigation.md -> #mitigation * Fixing index.md URI (#633) * Corrected language tags, formatting issue (#637) * Add compatibility documentation for Unicode bidirectional character fix. (#636) * Add draft documentation for Unicode bidirectional character fix. * Clarify that unencoded bidi control characters will be encoded. * Address feedback. * removed app compat issue for 472 branch (#640) * Correct docs site bookmarks (#634) * Misc issues (#644) * Miscellaneous formatting and link changes * Proper usage of .NET Framework * Removed 'please' * Fix typo (#646) * Changed docs.microsoft.com/dotnet URLs to relative URLs (#645) * Changed docs.microsoft.com/dotnet URLs to relative URLs * removed trailing spaces, added </p> and </br> HTML tags * Updated with release notes for 6.0.8 * Added new projects (#647) * Added new projects Added a new web framework, 2 new libraries and a project template * Fixed some typos * Remove Google Apps for Work (#648) Google Apps for Work was rebranded G Suite. However, you can just say Gmail instead of G Suite Gmail. * Added categories list (#650) * Update 510901-BCL Apps targeting .NET-4.6.1 that use .NET Standard libraries might be broken when running on .NET 4.7.1.md Added link for Windows 10 Fall Creators Update fix * Compat Documentation for DevDiv 258978 (#649) * Create WF-258978.md * Update WF-258978.md * Update WF-258978.md * Update WF-258978.md * Update WF-258978.md * Update WF-258978.md * Update WF-258978.md * Update WF-258978.md * Created links to APIs * Update WF-258978.md * Unfenced some text * Deleting to move file to net472 branch (#653) * Update Early Access Info (#642) * Update Early Access Info Updated early access version and removed old release notes link. * Updated per requested changes * Update 523633 - Setup - OS upgrade to Windows 10 gets the product in bad state.md * Update 534719-Networking ServicePoint.ConnectionLimit default behavio… (#664) * Update 534719-Networking ServicePoint.ConnectionLimit default behavior with loopback changed unexpectedly.md * Update known issue 534719 to describe broader impact * Simplified syntax (#672) * Create 553390 - BCL - SGEN crashes because it references System.IO.Co… (#670) * Create 553390 - BCL - SGEN crashes because it references System.IO.Compression.ZipFile.dll.md * Update 553390 - BCL - SGEN crashes because it references System.IO.Compression.ZipFile.dll.md * Update 553390 - BCL - SGEN crashes because it references System.IO.Compression.ZipFile.dll.md * Update dotnet471-known-issues.md * re-add ASPNET472CompatDoc (#668) * re-add ASPNET472CompatDoc * Minor edits, added links. * Minor changes, added links. * Changed targeted version, removed reverted section * Deletion to move file to 472 branch (#675) * Adding known issue about 12 shims when targeting 4.7.1 (#677) * Adding known issue about 12 shims when targeting 4.7.1 * PR Feedback * PR Feedback * PR Feedback * Feedback * Added Visual Studio reference (#681) * Added Visual Studio reference * Update 523633 - Setup - OS upgrade to Windows 10 gets the product in bad state.md * Fixed broken links (#683) * Added line breaks, fixed other formatting issues (#684) * Added line breaks, other formatting changes (#685) * Added line breaks, other formatting changes * additional formatting change * Add Flubu to .NET Open Source Developer Projects (#690) * Update dotnet-developer-projects.md * Update dotnet-developer-projects.md
No description provided.