mirror of
https://github.com/VictoriaMetrics/VictoriaMetrics.git
synced 2026-05-17 00:26:36 +03:00
At this time `bufferedwriter` [silently ignores connection close errors](78eaa056c0/lib/bufferedwriter/bufferedwriter.go (L67)). It may be very convenient in some situations (to not log such unimportant errors), but it's too implicit and unsafe for the others. For example, if you close [export API](https://docs.victoriametrics.com/#how-to-export-time-series) client connection in the middle of communication, VictoriaMetrics won't notice it and will start to hog CPU by exporting all the data into nowhere until it process all of them. If you'll make a few retries, it will be effectively a DoS on the server. This commit replaces this implicit error suppressing with explicit error handling which fixes the issue with export API. Issue was introduced ate78f3ac8ac