[rabbitmq-discuss] Bug? STOMP adaptor created queues with invalid UTF-8 characters
toby.corkindale at strategicdata.com.au
Mon Feb 13 23:40:25 GMT 2012
On 13/02/12 20:23, Marek Majkowski wrote:
> On Mon, Feb 13, 2012 at 02:17, Toby Corkindale
> <toby.corkindale at strategicdata.com.au> wrote:
>> I *think* I've found symptoms of a bug in the RabbitMQ STOMP adaptor.
>> We're using /topic/ subscriptions in our applications, and the STOMP adaptor
>> creates some temporary queues in RabbitMQ.
>> If you subscribe to /topic/foo.bar.123 it'll create a queue of the pattern
>> where the Xs are random characters.
>> It recently managed to create some with invalid UTF8 in the random section
>> of the queue name. This broke the web management interface and the JSON REST
>> =ERROR REPORT==== 13-Feb-2012::13:05:44 ===
>> webmachine error: path="/api/queues//"
> When I think about it, it's actually quite likely to happen.
> There are certain codepoints that mochiweb/mochijson refuses
> to encode. (And mochijson is used by the mgmt plugin).
> But under the hood RabbitMQ doesn't do any specific parsing for Unicode,
> for Rabbit every string is a valid one.
> I know about two character groups which are invalid:
> - D800–DFFF see:
> - and FFFE and FFFF, which mochijson just refuses to encode
> I'm not aware of other invalid codepoints.
> Do you know if in your case you used one of these?
We were using strictly ASCII names.
The invalid characters were turning up in the auto-generated part of the
queue names, from the STOMP adaptor inside RabbitMQ.
>> Is this intended behaviour? We've never seen this happen before.
> Of course not, but it can be controversial to decide what actually
> is an intended behaviour.
> In the meantime please avoid using invalid Unicode codepoints :)
See above! :)
Thanks for looking into this,
More information about the rabbitmq-discuss