[rabbitmq-discuss] Question about RabbitMQ "Presence Exchange" Plugin

Olda Ešner olda.esner at gmail.com
Wed Oct 31 21:25:01 GMT 2012


I tried following:
- cloned rabbitmq-public-umbrella
- inside rabbitmq-public-umbrella directory I created presence-exchange 
folder with current GIT presence-exchange plugin
- build "make VERSION=2.8.7" inside presence-exchange folder, everything 
was successful
- after copying rabbit-presence-exchange-0.0.0.ez into rabbitmq-2.8.7 
plugin folder and restarting rabbit server still the same error appears

Have any of you tried whether presence-exchange plugin is really compatible 
with the latest rabbitmq stable version (2.8.7)?

Thank you very much for any help.

Oldrich

Dne úterý, 30. října 2012 18:35:02 UTC-7 Olda Ešner napsal(a):
>
> 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/20121031/3afe1746/attachment.htm>


More information about the rabbitmq-discuss mailing list