Rabbitmq 4.0.5 Connection Frame body is too large Exception #2982
-
Hello I recently upgraded my Rabbitmq version from 3.11.5 to 4.0.5.
Is the cause because Rabbitmq version 4 uses AMQP 1.0 by default? Is there any way to solve this problem other than using RabbitMQ AMQP 1.0 Java client? Thanks in advance for your reply Spring boot: 3.2.13 |
Beta Was this translation helpful? Give feedback.
Replies: 3 comments 5 replies
-
Your stack trace does not correlate with your versioning:
Please, consider to upgrade to latest supported Spring AMQP version: https://spring.io/projects/spring-amqp#learn. I didn’t test the old version of the library with RabbitMQ 4.0. Is there any official claim that RabbitMQ 4.0 comes with AMQP 1.0 by default? |
Beta Was this translation helpful? Give feedback.
-
This is unrelated to AMQP 1.0. The maximum message size went down to 16 MiB in RabbitMQ 4.0. See "Default Maximum Message Size Reduced to 16 MiB" in the 4.0 release notes for more information. The logs report a message body of over 1 GB, this is by no means the kind of message size brokers like RabbitMQ are designed for. You should review the design of your system. RabbitMQ 4.0 does support AMQP 1.0 "natively" (no plugin needed), but this does not change anything for client applications: they negotiate the version of the protocol they want to use at connection time. See the blog post for more information. |
Beta Was this translation helpful? Give feedback.
-
Thanks, @acogoluegnes , for confirmation! |
Beta Was this translation helpful? Give feedback.
This is unrelated to AMQP 1.0.
The maximum message size went down to 16 MiB in RabbitMQ 4.0. See "Default Maximum Message Size Reduced to 16 MiB" in the 4.0 release notes for more information.
The logs report a message body of over 1 GB, this is by no means the kind of message size brokers like RabbitMQ are designed for. You should review the design of your system.
RabbitMQ 4.0 does support AMQP 1.0 "natively" (no plugin needed), but this does not change anything for client applications: they negotiate the version of the protocol they want to use at connection time. See the blog post for more information.