Getting no channels available at the end of test cases execution. #2446
-
|
Beta Was this translation helpful? Give feedback.
Replies: 7 comments 1 reply
-
More than likely you have a bug in your test case code. Perhaps you are not closing channels as expected. RabbitMQ does a have a per-connection channel limit. What is logged by RabbitMQ when this happens? If you can reliably reproduce this, please provide code so that we can do the same. Thanks. |
Beta Was this translation helpful? Give feedback.
-
Monitoring channel churn and totals will provide useful data points. So will server logs and a traffic capture. This message is not logged by RabbitMQ but rather by a client, presumably this one. Our team uses php-amqplib in our tutorials and maintains it to some extent. We are not familiar with |
Beta Was this translation helpful? Give feedback.
-
Your RabbitMQ log file should show why the connection was closed unexpectedly. Please find the log lines that correspond to this. |
Beta Was this translation helpful? Give feedback.
-
The log entries @lukebakken is referring to are documented in Connection Lifecycle Events. |
Beta Was this translation helpful? Give feedback.
-
According to these logs, your application (or library) closes connections about 20 ms after opening them, cleanly. My best guess is that this is a race condition between this "connection management" by the library and what your own code does. Such use cases are considered to be problematic and pathological: RabbitMQ and the messaging protocols it supports expect connections to be reasonably long-lived. Consider using |
Beta Was this translation helpful? Give feedback.
Monitoring channel churn and totals will provide useful data points. So will server logs and a traffic capture.
This message is not logged by RabbitMQ but rather by a client, presumably this one. Our team uses php-amqplib in our tutorials and maintains it to some extent. We are not familiar with
php-amqp
and IIRC it is based on a C library, which makes analyzing its behavior significantly more difficult.