Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

Already on GitHub? Sign in to your account

ActiveRecord::StatementInvalid: Bunny::FrameError: Connection-level error #193

Closed
frazerh opened this Issue Mar 6, 2014 · 6 comments

Comments

Projects
None yet
2 participants

frazerh commented Mar 6, 2014

Bunny 1.1.3

Started to see this error today, and I have no idea whats causing it or what it means. Any help/info would be MUCH appreciated.

ActiveRecord::StatementInvalid: Bunny::FrameError: Connection-level error: FRAME_ERROR - cannot decode <<0,0,7,116,105,99,107,101,116,115,196,141,116,105,99,107,101,116,46,117,112,100,97,116,101,100,46,117,112,100,97,116,101,100,95,97,116,46,116,105,99,107,101,116,95,115,116,97,116,117,115,95,116,121,112,101,95,105,100,46,117

Owner

michaelklishin commented Mar 6, 2014

I have no idea how ActiveRecord::StatementInvalid fits into the picture but the issue is what the message says: Bunny gets a frame it cannot decode.

Owner

michaelklishin commented Mar 6, 2014

Payload decodes to

^@^@^Gtickets�ticket.updated.updated_at.ticket_status_type_id.u

Note that it has unprintable (or at least non-ASCII) characters in the beginning.

frazerh commented Mar 6, 2014

Ah thanks, that looks like the routing key. How did you decode that (sorry noob to bunny/rabbit)? Is there a rabbitmq limit on routing key length that could also cause an issue?

Thanks for the fast response, really appreciate it.

Owner

michaelklishin commented Mar 6, 2014

Routing key is shortstr in the protocol, which is limited to 255 characters (<= 255 in RabbitMQ server code, to be specific).

I suspect there may be an off-by-1 error in amq-protocol, so routing keys exactly 255 characters long can't be parsed.

Owner

michaelklishin commented Mar 6, 2014

I decoded the list of integers using Erlang shell:

6> A = [0,0,7,116,105,99,107,101,116,115,196,141,116,105,99,107,101,116,46,117,112,100,97,116,101,100,46,117,112,100,97,116,101,100,95,97,116,46,116,105,99,107,101,116,95,115,116,97,116,117,115,95,116,121,112,101,95,105,100,46,117].
[0,0,7,116,105,99,107,101,116,115,196,141,116,105,99,107,
 101,116,46,117,112,100,97,116,101,100,46,117,112|...]
7> io:format("~s~n", [A]).
^@^@^Gtickets�ticket.updated.updated_at.ticket_status_type_id.u
ok

frazerh commented Mar 6, 2014

Great, thanks again, I am able to solve my issue now.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment