dotnet / BenchmarkDotNet Public
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
Stop gracefully when benchmark fails with an exception that can not be caught by a catch block #1661
Comments
I wonder whether Watson grabbed a dump. |
I wanna take this if still available. |
@kevinsalimi I've assigned you. Please let me know if you need some help. |
Hello @adamsitnik. Thank you for the assignment. The After creating a benchmark, I couldn't simulate any exceptions that cannot be caught by a catch block. I tried to threw variant exceptions and scenarios but I got nothing. In addition, I wrote code below in the benchmark:
I caught the
Any ideas would be appreciated. |
I'm not sure how to generate an uncatchable void Kill()
{
Kill();
} |
You can also generate an uncatchable |
I believe if you manually throw a |
@timcassell you are 100% correct. I did something embarrassingly stupid for my first comment on this project. Your approach is the best test. |
another example, presumably same fix:
cc @adamsitnik this was the issue I hit this morning |
The original issue was reported in dotnet/performance#1701:
The benchmark process exited with
-1073741819
which translates to0xc0000005
which is Access Violation.BenchmarkDotNet should:
Whoever is willing to work on that should most probably start by creating a benchmark that throws an exception that can not be caught by a catch block (
AccessViolation
would be the best), then create a test for it similar to this one and fixBenchmarkRunnerClean.Execute
The text was updated successfully, but these errors were encountered: