[rabbitmq-discuss] Writing to the mnesia table rabbit_queue, bad idea?

Simon MacMullen simon at rabbitmq.com
Fri May 13 10:58:34 BST 2011


On 13/05/11 04:06, Gavin M. Roy wrote:
> I am working on a project to manage custom attributes in the queue
> arguments table and found that if I write to the rabbit_queue table it
> will reflect in the management plugin as I want, without interrupting
> existing publishers or consumers.
>
> It seems like it does exactly what I want it to do, which is very cool
> but  I can't help but wonder if it's a bad idea though.
>
> Would someone with a good handle on RabbitMQ internals mind taking a
> look at my code and let me know if I have anything to worry about?

Depends how you define "bad idea". In terms of today's implementation 
you should be fine, as long as you don't expect (for example) to be able 
to flip the durability field and have that mean something.

Of course, you're going very much behind the scenes here and anything 
you do today is not guaranteed to work tomorrow. Raymond Chen is not on 
our team. While I don't see anything on the horizon that would break 
this general property, you should should certainly be prepared for the 
schema to change.

> All write related functions use the write_record/1 function:
>
> https://github.com/gmr/elmer/blob/master/elmer.erl#L98
>
> And examples of use can be found in setup_monitoring/4 at:
>
> https://github.com/gmr/elmer/blob/master/elmer.erl#L27
>
> And toggle_monitoring/2 at:
>
> https://github.com/gmr/elmer/blob/master/elmer.erl#L46
>
> I'm currently working on a cli wrapper for these and plan on releasing
> this and the accompanying Nagios integration bits if this is sane enough.

Cool, sounds interesting.

Cheers, Simon
-- 
Simon MacMullen
Staff Engineer, RabbitMQ
SpringSource, a division of VMware



More information about the rabbitmq-discuss mailing list