Comments (8)
This is when capturing .Current()
stack rather than an Exception stack?
from ben.demystifier.
Yes, this is what is failing for me:
allocator._initializeStackTrace = EnhancedStackTrace.Current();
from ben.demystifier.
We are also hitting this:
16:56:42 V1000.StorageSystems.RefreshNimble.GivenStorageSystemWithNameChangedOutOfBandWhenRefreshingThenNameIsUpdated [FAIL]
16:57:08 System.InvalidOperationException : Late bound operations cannot be performed on fields with types for which Type.ContainsGenericParameters is true.
16:57:08 Stack Trace:
16:57:08 at System.Reflection.RtFieldInfo.InternalGetValue(Object obj, StackCrawlMark& stackMark)
16:57:08 at System.Reflection.RtFieldInfo.GetValue(Object obj)
16:57:08 C:\GitHub\Ben.Demystifier\src\Ben.Demystifier\EnhancedStackTrace.Frames.cs(142,0): at System.Diagnostics.EnhancedStackTrace.GetMethodDisplayString(MethodBase originMethod)
16:57:08 C:\GitHub\Ben.Demystifier\src\Ben.Demystifier\EnhancedStackTrace.Frames.cs(70,0): at System.Diagnostics.EnhancedStackTrace.GetFrames(StackTrace stackTrace)
16:57:08 C:\GitHub\Ben.Demystifier\src\Ben.Demystifier\EnhancedStackTrace.cs(47,0): at System.Diagnostics.EnhancedStackTrace..ctor(StackTrace stackTrace)
from ben.demystifier.
Ditto.
field's declaring type is generic, IsConstructedGenericType is false.
This means it will throw ...
System.InvalidOperationException: Late bound operations cannot be performed on fields with types for which Type.ContainsGenericParameters is true.
at System.Reflection.RtFieldInfo.InternalGetValue(Object obj, StackCrawlMark& stackMark)
at System.Reflection.RtFieldInfo.GetValue(Object obj)
Going to fork this and provide a work-around by skipping the field value evaluation if !IsConstructedGenericType and just checking the field name, but I think the type diagnosis for the generic type's parameters (to turn the GTD into a CGT) will be either impossible or require looking at previous stack frames or heaven forbid the this
variable in the frame.
from ben.demystifier.
from ben.demystifier.
Since #77 is merged, this might be resolved.
@ayende can you test with latest?
from ben.demystifier.
https://www.nuget.org/packages/Ben.Demystifier/0.1.2
from ben.demystifier.
Going to close this ass assumed fixed
from ben.demystifier.
Related Issues (20)
- Does this work for logging in application insights?
- incorrectly demystifying used functions
- Potential performance improvements HOT 1
- How can I Demystify a string with the callstack? HOT 4
- intermittent failure for NonThrownException.Current
- Demystify Changes "\" to "/" HOT 1
- why store exception info in _stackTraceString? is it safe?
- [Question] does it make sense to call demystify on a throw?
- Dependency on end of life System.Reflection.Metadata 5.0.0 HOT 3
- support .NET 7
- 'AccessViolationException' thrown for 'EnhancedStackTrace.Current().ToString()' on NET Core 3.1 HOT 3
- Possible to parse a string containing a demystified stack trace
- add a CLI tool
- Source Generators / Native AOT
- Have you ever considered having an extension for ClrMd?
- Demystified stack trace is slightly more confusing... it eliminates a line that my code is actually calling.
- Demystifier shows async methods in AOP aspect
- Optimise packages for net 6
- Project maintained? HOT 1
- Typo in class name 'StringBuilderExtentions'
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from ben.demystifier.