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

Matthias Radestock matthias at rabbitmq.com
Wed Jul 20 23:01:20 BST 2011


Michael,

On 20/07/11 22:30, Michael Klishin wrote:
> I am investigating a rare (but nonetheless top priority) amqp gem issue
> when frames are delivered out of order. Neither the Tracer tool nor
> Wireshark give me
> good understanding of what frame exactly RabbitMQ chokes on, it just
> says "expected a method frame, got a non-method frame instead".

That means the server got a content header or body frame, which in case 
of client->server communication can only be as part of a publish. The 
most likely cause is the client sending more content body frames than it 
should, e.g. a trailing empty frame.

It should be possible to spot that from the tracer / wireshark.

> Is it a good idea to make Rabbit log such issues with more detail (it
> shouldn't affect hot code path performance anyway)?

We wouldn't want to log complete frame contents since that would 
introduce a major DoS attack vector. Having said that, the error that is 
logged (and indeed returned to the client) should include some more info 
than it currently does. I have filed a bug for that.

Regards,

Matthias.


More information about the rabbitmq-discuss mailing list