-
Notifications
You must be signed in to change notification settings - Fork 3.6k
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
Backoff policy for Subscriptions #5462
Comments
@nathanielc Any thoughts? |
A few thoughts....
|
Related to issue #5559 |
When implementing the backoff policy, should InfluxDB give up after a certain number of tries? The Wikipedia article recommends giving up after 16 attempts. |
@jsternberg Are you planning on adding this? We should probably discuss more first. As Its been a while since this was requested and subscriptions have change a bit since. In general the plan around subscriptions was to not implement retries so that the you don't overwhelm the database itself. If you want smart retry logic use the influxdb-relay as its already built in. |
I was going through things labeled support and I was going to attempt to implement them. If this is no longer needed, we should close it. I have no opinion on whether or not this is important or not at the moment. |
@kostasb Is this still an issue? Since now we have the influxdb-relay, which can handle retries, seems like we recommend using the relay instead of subscriptions if retries are needed. Also to be clear subscriptions currently do not have any retry logic, so there is no stampeding or other side effects of attempting retries. |
@nathanielc HArelay can be used as a queuing mechanism for any scenario that needs buffering/retry logic in Line Protocol. But from support's perspective we are reluctant to suggest the use of a tool that is not being supported by the core team, for anything other than the original purpose of custom high-availability setups. Implementing this logic is more of a design decision. I am not sure whether buffering/queuing is what we want in this case, rather than just a way to back off from forwarding points to Kapacitor while the latter fails to ingest them. |
I ran into this issue as well when trying to move from http to https kapacitor. Influx held onto the http subscription. So
i was seeing this in the influx logs and this in the kapacitor logs I had to manually remove the subscription using somehow between influxdb and kapacitor, the old http subscription should have been automatically removed. |
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions. |
This issue has been automatically closed because it has not had recent activity. Please reopen if this issue is still important to you. Thank you for your contributions. |
Consider implementing a backoff policy for when data points cannot be delivered to InfluxDB subscriptions. A high number of connection attempts may overwhelm the system if it keeps trying to send data when the subscriber is not listening (incidents have been reported).
Also, might be meaningful to reformat the logging output.
[subscriber] 2016/01/27 08:00:00 write udp 127.0.0.1:59505: connection refused
Two considerations:
-udp is connectionless so it might be better to indicate failures as "timeout" or "udp write failed"
-it would help in troubleshooting to log the subscription's name in addition to [subscriber]
The text was updated successfully, but these errors were encountered: