-
Notifications
You must be signed in to change notification settings - Fork 55
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
very weird problem (possibly related to SSL connections handling in reactive RabbitMQ client) #145
Comments
Please provide the broker and Erlang versions, as well the broker logs when the problems occurs. It seems the connection is closed for some reason, so the broker logs will be helpful to find out more. Please /cc me on Gitter for any question related to Reactor RabbitMQ. |
RabbitMQ 3.8.3, Erlang 22.2.1 logs will come later |
more exception from the application:
|
Could you please try with the blocking IO mode as well? |
you mean, without using |
Yes. |
hmm, with that commented out, the errors are gone. Uncommented again - here they go. what gives? Should I still extract logs ? the only things related to my app around the time when problem was first manifested are:
|
This might be a bug in the Java client NIO connector. Contrary to blocking IO, TLS is not transparent with NIO, it requires crypting/decrypting before leaving/reaching the application code. It would be great to be able to reproduce independently from Reactor RabbitMQ. As a workaround you can switch to the blocking IO mode for now. This should not affect your application unless you use many connections (understand 100s or 1000s of connections in your client applications). |
that's cool!! every single one example in the documentation uses that, so I basically assumed that to be a pre-condition for reactive behaviour. Thanks for the suggestion |
Expected Behavior
Application should be capable of receiving messages reliably under load, even over AMQPS
Actual Behavior
We have a case when reactive RabbitMQ client throws exceptions, loses connection and is basically unusable for prolonged periods of time
Steps to Reproduce
Unfortunately, I can not yet produce a reliably reproducing case that would not depend on our in-house RabbitMQ installation, This is what I can share though:
We have a problem which I only could reproduce against our in-house RabbitMQ server, and even then only under some specific circumstances.
the gist of the problem is that occassionally, when our application (WebFlux/Reactive-RabbitMQ) is publishing and receiving many messages in parallel (think more then 20 parallel consumers, I use
k6 --vus 50
to create load), it starts throwing exceptions like this:and
and
etc. There were certainly some other ones, can't find in the logs right now. When I run exactly the same scenario with "traditional" stack (Spring WebMVC+Spring AMQP), not a single exception of this sort occurs.
I could collect whichever information is necessary though, if I would 've been suggested appropriate tools or suggestions on how to pin it down
(it was first shared on Gitter, but no reaction followed, so I decided to raise an issue and see if anyone would want to chime in)
Possible Solution
Your Environment
netty
, ...): 4.1.49.Finaljava -version
): 11.0.2 (same with 8.0.172)uname -a
): Win10 x64The text was updated successfully, but these errors were encountered: