[rabbitmq-discuss] Question about RabbitMQ "Presence Exchange" Plugin
Oldřich Ešner
olda.esner at gmail.com
Wed Oct 31 01:34:56 GMT 2012
Bad news, plugins seems to work in management console (x-presence exchange
isn't in "red" state) but after binding x-presence exchange to queue,
rabbit server log writes the following:
=ERROR REPORT==== 31-Oct-2012::02:22:37 ===
** Generic server <0.131.0> terminating
** Last message in was {'$gen_cast',
{submit_async,#Fun<rabbit_binding.3.58413561>}}
** When Server state == 2
** Reason for termination ==
** {function_clause,
[{presence_exchange,add_binding,
[none,
{exchange,
{resource,<<"/">>,exchange,<<"xpresence">>},
'x-presence',true,false,false,[],undefined},
{binding,
{resource,<<"/">>,exchange,<<"xpresence">>},
<<>>,
{resource,<<"/">>,queue,<<"qpresence">>},
[]}],
[]},
{rabbit_binding,x_callback,4,[]},
{rabbit_binding,'-recover_semi_durable_route/3-fun-0-',3,[]},
{worker_pool_worker,handle_cast,2,[]},
{gen_server2,handle_msg,2,[]},
{proc_lib,init_p_do_apply,3,[{file,"proc_lib.erl"},{line,227}]}]}
=ERROR REPORT==== 31-Oct-2012::02:19:08 ===
** Generic server <0.1023.0> terminating
** Last message in was {'$gen_cast',
{method,
{'queue.bind',0,
<<"1ae1453a-5218-467d-9f10-b4cd10014d2a">>,
<<"xpresence">>,<<>>,false,[]},
none,noflow}}
** When Server state == {ch,running,rabbit_framing_amqp_0_9_1,1,<0.1019.0>,
<0.1021.0>,<0.1019.0>,
"127.0.0.1:54877 -> 127.0.0.1:5672",
{token,<0.1022.0>,false},
none,1,
{[],[]},
{[],[]},
[],[],
{user,<<"guest">>,
[administrator],
rabbit_auth_backend_internal,
{internal_user,<<"guest">>,
<<238,155,95,210,98,65,149,74,208,144,18,
191,58,228,155,137,230,224,252,199>>,
[administrator]}},
<<"/">>,
<<"1ae1453a-5218-467d-9f10-b4cd10014d2a">>,
{dict,0,16,16,8,80,48,
{[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],
[]},
{{[],[],[],[],[],[],[],[],[],[],[],[],[],[],
[],[]}}},
{dict,0,16,16,8,80,48,
{[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],
[]},
{{[],[],[],[],[],[],[],[],[],[],[],[],[],[],
[],[]}}},
{set,0,16,16,8,80,48,
{[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],
[]},
{{[],[],[],[],[],[],[],[],[],[],[],[],[],[],
[],[]}}},
{dict,0,16,16,8,80,48,
{[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],
[]},
{{[],[],[],[],[],[],[],[],[],[],[],[],[],[],
[],[]}}},
{set,0,16,16,8,80,48,
{[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],
[]},
{{[],[],[],[],[],[],[],[],[],[],[],[],[],[],
[],[]}}},
<0.1017.0>,
{state,fine,5000,#Ref<0.0.0.8440>},
false,1,
{{0,nil},{0,nil}},
[],
[{<<"exchange_exchange_bindings">>,bool,true},
{<<"consumer_cancel_notify">>,bool,true},
{<<"basic.nack">>,bool,true},
{<<"publisher_confirms">>,bool,true}],
none}
** Reason for termination ==
** {function_clause,
[{presence_exchange,add_binding,
[none,
{exchange,
{resource,<<"/">>,exchange,<<"xpresence">>},
'x-presence',true,false,false,[],undefined},
{binding,
{resource,<<"/">>,exchange,<<"xpresence">>},
<<>>,
{resource,<<"/">>,queue,
<<"1ae1453a-5218-467d-9f10-b4cd10014d2a">>},
[]}],
[]},
{rabbit_binding,'-add/3-fun-0-',3,[]},
{rabbit_channel,binding_action,9,[]},
{rabbit_channel,handle_cast,2,[]},
{gen_server2,handle_msg,2,[]},
{proc_lib,init_p_do_apply,3,[{file,"proc_lib.erl"},{line,227}]}]}
=ERROR REPORT==== 31-Oct-2012::02:19:08 ===
AMQP connection <0.1019.0>, channel 1 - error:
{function_clause,
[{presence_exchange,add_binding,
[none,
{exchange,
{resource,<<"/">>,exchange,<<"xpresence">>},
'x-presence',true,false,false,[],undefined},
{binding,
{resource,<<"/">>,exchange,<<"xpresence">>},
<<>>,
{resource,<<"/">>,queue,
<<"1ae1453a-5218-467d-9f10-b4cd10014d2a">>},
[]}],
[]},
{rabbit_binding,'-add/3-fun-0-',3,[]},
{rabbit_channel,binding_action,9,[]},
{rabbit_channel,handle_cast,2,[]},
{gen_server2,handle_msg,2,[]},
{proc_lib,init_p_do_apply,3,[{file,"proc_lib.erl"},{line,227}]}]}
=WARNING REPORT==== 31-Oct-2012::02:19:08 ===
Non-AMQP exit reason '{function_clause,
[{presence_exchange,add_binding,
[none,
{exchange,
{resource,<<"/">>,exchange,<<"xpresence">>},
'x-presence',true,false,false,[],undefined},
{binding,
{resource,<<"/">>,exchange,<<"xpresence">>},
<<>>,
{resource,<<"/">>,queue,
<<"1ae1453a-5218-467d-9f10-b4cd10014d2a">>},
[]}],
[]},
{rabbit_binding,'-add/3-fun-0-',3,[]},
{rabbit_channel,binding_action,9,[]},
{rabbit_channel,handle_cast,2,[]},
{gen_server2,handle_msg,2,[]},
{proc_lib,init_p_do_apply,3,
[{file,"proc_lib.erl"},{line,227}]}]}'
Is any of you able to find a source of problem? We are using Java EE
application with spring-rabbit and spring-amqp libraries.
Thank you.
Oldrich
2012/10/30 Oldřich Ešner <olda.esner at gmail.com>
> Thank you very much for the fastest fix I have ever seen :)
>
> If you want to update downloads section, I'm including current ez build of
> presence plugin.
>
> Regards,
>
> Oldrich
>
>
> 2012/10/30 Simon MacMullen <simon at rabbitmq.com>
>
>> On 30/10/12 14:18, Tony Garnock-Jones wrote:
>>
>>> On 30 October 2012 00:27, Olda Ešner <olda.esner at gmail.com
>>> <mailto:olda.esner at gmail.com>> wrote:
>>>
>>> after upgrading to RabbitMQ 2.8.6 from 2.8.5, presence-exchange
>>> plugin doesn't work. Is there any chance to fix it?
>>>
>>>
>>> It's a consequence of the removal from the server's core of support for
>>> "immediate" publication. At least rabbithub and the udp-exchange will
>>> also have to be updated. The fix should be straightforward.
>>>
>>
>> ...although that's happened on default, not 2.8.6.
>>
>> To the OP: you might need to get the un-updated version of the plugin
>> source, and then build that against the 2.8.6 source download.
>>
>> Alternatively, whatever plugin binary you created for 2.8.5 should still
>> work, I don't think any APIs changed?
>>
>>
>> I'll email again when I'm done. Shouldn't be long.
>>>
>>
>> *clicks stopwatch* Six minutes, not bad :-)
>>
>> Cheers, Simon
>>
>>
>> --
>> Simon MacMullen
>> RabbitMQ, VMware
>>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.rabbitmq.com/pipermail/rabbitmq-discuss/attachments/20121030/e68fb9df/attachment.htm>
More information about the rabbitmq-discuss
mailing list