[rabbitmq-discuss] Patching rabbitmq to get more information about framing exceptions

Michael Klishin michael.s.klishin at gmail.com
Thu Jul 21 03:51:28 BST 2011


2011/7/21 Matthias Radestock <matthias at rabbitmq.com>

> Given that you can reproduce the problem easily, you may just want to log
> some details of all the frames - frame type, class id, method id, and for
> content headers the expected body size, and for content bodies the payload
> size.


So far I narrowed it down to the "empty messages" problem: whenever there is
an empty message sent by amqp gem master version, RabbitMQ
doesn't consider it a complete message and thus clients do not get anything.
With a simple script that terminates as soon as the message is received
(by the same process), this looks like app is hanging. In the context of a
larger application, sometimes there are empty messages transmitted (I am
streaming a stdout output).

After comparing 2 clients I see the following picture: the data transmitted
is exactly the same, frame order is correct but Wireshark GUI suggests that
one client transmits 3 frames as 3 IP packets. In this case, RabbitMQ is
happy. The other transmits them all in a single IP packet and RabbitMQ
doesn't seem to recognize it as a complete message.

Here are two Wireshark session exports:
https://gist.github.com/1096404

If the [frames] content is the same, what may be going on here?

-- 
MK

http://github.com/michaelklishin
http://twitter.com/michaelklishin
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.rabbitmq.com/pipermail/rabbitmq-discuss/attachments/20110721/f182e032/attachment.htm>


More information about the rabbitmq-discuss mailing list