-
Notifications
You must be signed in to change notification settings - Fork 0
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
DSET-4080 fix recovery from error state #36
Conversation
Codecov Report
@@ Coverage Diff @@
## main #36 +/- ##
==========================================
+ Coverage 73.86% 74.84% +0.98%
==========================================
Files 10 10
Lines 1377 1387 +10
==========================================
+ Hits 1017 1038 +21
+ Misses 298 290 -8
+ Partials 62 59 -3
|
Problem - when DataSet returns Retryable error we try to retry with timeout. Once this time is over we stay in error mode since last error is never overriden, and new event handling is rejected. Solution - keep timestamp of last error and consider it while evaluate last error timestamp in order to recover from error mode.
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.
For a change like that, I would feel more comfortable if we also had some end to end tests - I think there should be the mock Python server in place which we should be able to utilize for that.
@tomaz-s1 I have more e2e test like unit (blackbox) test using waiting etc. but that test fails on pre commit hook despite the fact that in idea its passes. So after all I decided to mock the state (whitebox test), its also much faster. |
@zdaratom Yeah, it actually looks like we don't have a setup for such tests in this repo, but we have it in the otel one (https://github.com/scalyr/dataset-exporter-opentelemetry/tree/main/dummy-server), so we should add an end to end test like this in that repo once the PR is merged. |
sounds reasonable, I will add TODO into the Jira |
Problem
Solution