Replies: 2 comments 11 replies
-
It could also be a symptom of a wider issue with recovery. here is a different example which doesnt have anything to do with OpenSSL
|
Beta Was this translation helpful? Give feedback.
-
Recovery is triggered by a specific set of exceptions in the transport module. You are welcome to add more of them but the goal was never to handle all exception types, by design. OpenSSL constants have changed between Ruby versions, you are welcome to submit a PR that adds 3.x According the the stack trace, I am not convinced that this is a recovery attempt and not an initial connection failure which are not retried by design (besides trying all hosts in the provided list). |
Beta Was this translation helpful? Give feedback.
-
Bunny 2.20.3
ruby 3.1
I am connecting to RabbitMQ via TLS, everything is working correctly 99.9% of the time.
During development sometimes I am killing the rabbitmq server while I have multiple clients connected.
Every so often I get a client that detects rabbitmq is down, tries to connect (server is still down or coming up) and errors in a way that stops it from trying to reconnect anymore. My client is then locked up and I have to restart it.
I thought it could be an issue with the type of OpenSSL error.
The reader_loop->run_loop traps OpenSSL::OpenSSLError but the actual error thrown is OpenSSL::SSL::SSLError
However as it is happening during recovery from network failure, it could be that the error needs to be captured in session->start and should follow the same logic as TCPConnectionFailed
Beta Was this translation helpful? Give feedback.
All reactions