Using Ruby 2.6.3, bunny 2.14.1
So doing my applications run time, I keep seeing this error pattern
.../lib/bunny/reader_loop.rb:132: Exception in the reader loop: AMQ::Protocol::EmptyResponseError: Empty response received from the server.
.../lib/bunny/reader_loop.rb:133: Backtrace:
.../lib/bunny/reader_loop.rb:135: /my_app/vendor/bundle/ruby/2.6.0/gems/amq-protocol-2.3.0/lib/amq/protocol/frame.rb:60:in `decode_header'
.../lib/bunny/reader_loop.rb:135: /my_app/vendor/bundle/ruby/2.6.0/gems/bunny-2.14.1/lib/bunny/transport.rb:262:in `read_next_frame'
.../lib/bunny/reader_loop.rb:135: /my_app/vendor/bundle/ruby/2.6.0/gems/bunny-2.14.1/lib/bunny/reader_loop.rb:73:in `run_once'
.../lib/bunny/reader_loop.rb:135: /my_app/vendor/bundle/ruby/2.6.0/gems/bunny-2.14.1/lib/bunny/reader_loop.rb:39:in `block in run_loop'
.../lib/bunny/reader_loop.rb:135: /my_app/vendor/bundle/ruby/2.6.0/gems/bunny-2.14.1/lib/bunny/reader_loop.rb:36:in `loop'
.../lib/bunny/reader_loop.rb:135: /my_app/vendor/bundle/ruby/2.6.0/gems/bunny-2.14.1/lib/bunny/reader_loop.rb:36:in `run_loop'
.../lib/bunny/session.rb:728: Will recover from a network failure (no retry limit)...
I have an app that is has multiple workers on the same queue. It seems to happen when on of those worker threads is "REALLY" busy on some IO action. However, the exception doesn't seem to be coming from that specific worker thread
Its happening on my production server, and my ability to really dig into it live is a bit more difficult. The only thing I am pretty certain on is it is happeing when one of the worker threads for the queue is doing heavy IO, (in this case copying a large file between NFS volumes)
Any ideas on how to help reduce these? Or really, what is going on here?
Thanks