Closed mat closed 7 years ago
Hello @mat, as per the README:
In case that errors are encountered, Apnotic will raise the error and repair the underlying connection, but it will not retry the requests that have failed. This is by design, so that the job manager (Sidekiq, Resque,...) can retry the job that failed. For this reason, it is recommended to use a queue engine that will retry unsuccessful pushes.
Does this clears your question?
Hello @mat, A similar request (https://github.com/ostinelli/apnotic/issues/45) has been opened.
I've provided a possible fix (discussed in https://github.com/ostinelli/net-http2/issues/4), can you try out the branch https://github.com/ostinelli/net-http2/tree/error_callback and see if that covers your needs?
Released Apnotic 1.1.0
to cover this. Thank you for your feedback.
Thanks @ostinelli and everyone involved in finding a solution for this, should make it possible to fix our production setup 😃
I am a bit at a loss because we've been running into what I consider somewhat of a thread-safety/isolation issue. We have an AMQP queue based architecture that we use to send out pushes (to APN and other push systems) where we are seeing a lot of these errors:
(this is the full trace)
The problem is this is happening in unrelated processors and making them fail hard, like the
GCMProcessor
as an example. To give you a very rough idea we are effectively using one connection per processor:I don't know how to handle this one in the application layer.
Any ideas? Any input is welcome.