-
Notifications
You must be signed in to change notification settings - Fork 1.1k
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
app/vmagent/remotewrite: skip sending empty block to downstream server #6241
Conversation
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.
Thanks! See my comments below
I have made some update to fix lint check failure. |
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.
Thanks for the contribution!
…r & fix lint checks
…r & update according to comments
…r & fix lint checks
…r & update according to comments
…r & update according to comments Co-authored-by: Zhu Jiekun <jiekun.dev@gmail.com>
…r & fix lint checks
…r & update according to comments
…r & update according to comments Co-authored-by: Zhu Jiekun <jiekun.dev@gmail.com>
…r & update according to comments
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## master #6241 +/- ##
==========================================
- Coverage 60.37% 55.34% -5.04%
==========================================
Files 411 586 +175
Lines 76609 77970 +1361
==========================================
- Hits 46253 43150 -3103
- Misses 27794 31839 +4045
- Partials 2562 2981 +419 ☔ View full report in Codecov by Sentry. |
* remove unnecessary log message, since user can't react on it; * add note to the changelog.
#6241) Occasionally, vmagent sends empty blocks to downstream servers. If a downstream server returns an unexpected response, vmagent gets stuck in a retry loop. While vmagent handles 400 and 409 errors, there are various prometheus remote write implementations that return different error codes. For example, vector returns a 422 error. To mitigate the risk of vmagent getting stuck in a retry loop, it is advisable to skip sending empty blocks to downstream servers. Co-authored-by: hao.peng <hao.peng@smartx.com> Co-authored-by: Zhu Jiekun <jiekun.dev@gmail.com> Co-authored-by: hagen1778 <roman@victoriametrics.com> (cherry picked from commit 3661373)
#6241) Occasionally, vmagent sends empty blocks to downstream servers. If a downstream server returns an unexpected response, vmagent gets stuck in a retry loop. While vmagent handles 400 and 409 errors, there are various prometheus remote write implementations that return different error codes. For example, vector returns a 422 error. To mitigate the risk of vmagent getting stuck in a retry loop, it is advisable to skip sending empty blocks to downstream servers. Co-authored-by: hao.peng <hao.peng@smartx.com> Co-authored-by: Zhu Jiekun <jiekun.dev@gmail.com> Co-authored-by: hagen1778 <roman@victoriametrics.com> (cherry picked from commit 3661373) Signed-off-by: hagen1778 <roman@victoriametrics.com>
#6241) Occasionally, vmagent sends empty blocks to downstream servers. If a downstream server returns an unexpected response, vmagent gets stuck in a retry loop. While vmagent handles 400 and 409 errors, there are various prometheus remote write implementations that return different error codes. For example, vector returns a 422 error. To mitigate the risk of vmagent getting stuck in a retry loop, it is advisable to skip sending empty blocks to downstream servers. Co-authored-by: hao.peng <hao.peng@smartx.com> Co-authored-by: Zhu Jiekun <jiekun.dev@gmail.com> Co-authored-by: hagen1778 <roman@victoriametrics.com> (cherry picked from commit 3661373) Signed-off-by: hagen1778 <roman@victoriametrics.com>
Describe Your Changes
Occasionally, vmagent sends empty blocks to downstream servers. If a downstream server returns an unexpected response, vmagent gets stuck in a retry loop. While vmagent handles 400 and 409 errors, there are various prometheus remote write implementations that return different error codes. For example, vector returns a 422 error. To mitigate the risk of vmagent getting stuck in a retry loop, it is advisable to skip sending empty blocks to downstream servers.
Related logs
Checklist
The following checks are mandatory: