-
Notifications
You must be signed in to change notification settings - Fork 11
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
Fix misleading 'serious error' message #88
base: develop
Are you sure you want to change the base?
Conversation
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## develop #88 +/- ##
===========================================
- Coverage 61.50% 61.49% -0.01%
===========================================
Files 275 275
Lines 15226 15228 +2
Branches 1551 1551
===========================================
Hits 9365 9365
- Misses 5861 5863 +2 ☔ View full report in Codecov by Sentry. |
9f6f76c
to
a45da83
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.
Does seem a bit hacky... I think I'll defer to Simon for this one.
a45da83
to
2d237d7
Compare
Indeed. I considered another approach but that's a discussion that we need to have in a different context. Right now this change is just cosmetics. |
2d237d7
to
523f00a
Compare
Addressed comment by @simondsmart to subclass |
During destruction of an AsyncApiIterator an SeriousBug exception is created if the writer task has not yet pushd all output into the shared eckit::Queue. Sending a SeriousBug exception to the writing thread, via eckit::Queue::interrupt, safely stops writing by unwinding the stack until the SeriousBug exception was silently caught in the wrapping lambda. The issue has been that on construction of a SeriousBug exception error message and stack trace are logged. This implies to the user that a serious defect was encountered when in fact everything is fine. This change is a bit of a hack as it still uses throwing an exception from the queue on write but now will use an exception that does not log anything. Fixes: FDB-405
523f00a
to
fa62f76
Compare
During destruction of an AsyncApiIterator an SeriousBug exception is created if the writer task has not yet pushd all output into the shared eckit::Queue. Sending a SeriousBug exception to the writing thread, via eckit::Queue::interrupt, safely stops writing by unwinding the stack until the SeriousBug exception was silently caught in the wrapping lambda.
The issue has been that on construction of a SeriousBug exception error message and stack trace are logged. This implies to the user that a serious defect was encountered when in fact everything is fine.
This change is a bit of a hack as it still uses throwing an exception from the queue on write but now will use an exception that does not log anything.
Fixes: FDB-405