[rabbitmq-discuss] Federation Issues: Disconnects and Failures on Queue Bind - 2012-01-20

DawgTool dawgtool at aol.com
Fri Jan 20 22:14:21 GMT 2012


Hi All,

Trying to setup Federation across two RabbitMQ clusters (2.7.1, R15B).
Everything seems to start up fine, but then I have a constant stream of 
disconnects, in some cases it doesn't clear the connection, just keeps 
adding more (killed it after reaching several hundred).
It seems to start once I bind a queue to the exchange (dc001-exchange-d) 
on the DOWNSTREAM server.


******************** CONFIG on UPSTREAM ********************
==> enabled_plugins <==
[rabbitmq_management,rabbitmq_management_agent,rabbitmq_management_visualiser,rabbitmq_federation].

==> rabbitmq.config <==
[
   {rabbit,                    [{vm_memory_high_watermark, 0.6},
                                {collect_statistics_interval, 5000},
                                {hipe_compile, true}
                               ]
   },
   {mnesia,                    [{dc_dump_limit, 40},
                                {dump_log_write_threshold, 50000},
                                {send_compressed, 9},
                                {snmp, true}
                               ]
   },
   {rabbitmq_management,       [ {http_log_dir, 
"/data/rabbitmq/dc001/rabbit-mgmt"} ] },
   {rabbitmq_management_agent, [ {force_fine_statistics, true} ] },

   {rabbitmq_federation,       [{exchanges, [
                                       [{exchange, "dc001-exchange-d"}, 
{virtual_host, "/"}, {type, "fanout"}, {durable, true}, {auto_delete, 
false}, {internal, false}, {upstream_set, "dc001-servers"} ]
                                      ]},
                                {upstream_sets, [
                                           {"dc001-servers", [
                                            [{connection, "host-001"}, 
{exchange, "dc001-exchange-u"}, {max_hops, 1}]
                                           ]}
                                          ]},
                                {connections,   [
                                           {"host-001", [{host, 
"host-001.domain.com"}, {protocol, "amqp"}, {port, 5672},
                                                           {mechanism, 
default}, {prefetch_count, 1000}, {virtual_host, "/"},
                                                           {username, 
"guest"}, {password, "guest"}, {reconnect_delay, 10},
                                                           {heartbeat, 5}]}
                                          ]},
                                {local_username, "guest"}
                               ]}
].

==> rabbitmq-env.conf <==
NODENAME=dc001
BASE=/data/rabbitmq/dc001
MNESIA_BASE=/data/rabbitmq/dc001/mnesia
LOG_BASE=/data/rabbitmq/dc001/log
SERVER_START_ARGS="+K true -smp enable"


******************** Log on UPSTREAM ********************
=INFO REPORT==== 20-Jan-2012::16:15:27 ===
accepted TCP connection on 0.0.0.0:5672 from 192.168.0.48:49407

=INFO REPORT==== 20-Jan-2012::16:15:27 ===
starting TCP connection <0.32601.22> from 192.168.0.48:49407

=ERROR REPORT==== 20-Jan-2012::16:15:27 ===
connection <0.32601.22>, channel 2 - error:
{amqp_error,not_found,
             "no exchange 'federation: dc001-exchange-u -> 
dc001 at host-007.domain.com:dc001-exchange-d A' in vhost '/'",
             'exchange.delete'}

=ERROR REPORT==== 20-Jan-2012::16:30:42 ===
connection <0.32601.22>, channel 1 - error:
{amqp_error,not_found,"no exchange 'dc001-exchange-u' in vhost '/'",
             'exchange.bind'}

=INFO REPORT==== 20-Jan-2012::16:30:42 ===
closing TCP connection <0.32601.22> from 192.168.0.48:49407

=INFO REPORT==== 20-Jan-2012::16:30:42 ===
accepted TCP connection on 0.0.0.0:5672 from 192.168.0.48:55900

=INFO REPORT==== 20-Jan-2012::16:30:42 ===
starting TCP connection <0.7666.23> from 192.168.0.48:55900

=ERROR REPORT==== 20-Jan-2012::16:30:42 ===
connection <0.7666.23>, channel 2 - error:
{amqp_error,not_found,
             "no exchange 'federation: dc001-exchange-u -> 
dc001 at host-007.domain.com:dc001-exchange-d A' in vhost '/'",
             'exchange.delete'}

=ERROR REPORT==== 20-Jan-2012::16:30:42 ===
connection <0.7666.23>, channel 1 - error:
{amqp_error,not_found,"no exchange 'dc001-exchange-u' in vhost '/'",
             'exchange.bind'}





******************** Log on DOWNSTREAM ********************
=INFO REPORT==== 20-Jan-2012::16:15:27 ===
Federation exchange 'dc001-exchange-d' in vhost '/' connected to 
host-001.domain.com:5672:/:dc001-exchange-u

=ERROR REPORT==== 20-Jan-2012::16:30:42 ===
** Generic server <0.4323.0> terminating
** Last message in was {'$gen_cast',
                         {enqueue,1,
                          {add_binding,
                           {binding,
                            
{resource,<<"/">>,exchange,<<"dc001-exchange-d">>},
<<>>,
                            {resource,<<"/">>,queue,
<<"dc.omniture:mongodb:all">>},
                            []}}}}
** When Server state == {state,
                             {upstream,
                                 
{amqp_params_network,<<"guest">>,<<"guest">>,
<<"/">>,"host-001.domain.com",5672,0,0,
                                     5,infinity,none,
                                     [#Fun<amqp_auth_mechanisms.plain.3>,
                                      
#Fun<amqp_auth_mechanisms.amqplain.3>],
                                     [],[]},
<<"dc001-exchange-u">>,1000,1,10,none,none,
                                 "host-001"},
<0.4340.0>,<0.4350.0>,
<<"federation: dc001-exchange-u -> 
dc001 at host-007.domain.com:dc001-exchange-d">>,
<<"federation: dc001-exchange-u -> 
dc001 at host-007.domain.com:dc001-exchange-d B">>,
                             {0,nil},
                             1,
                             {dict,0,16,16,8,80,48,
                                 
{[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],
                                  []},
                                 
{{[],[],[],[],[],[],[],[],[],[],[],[],[],[],
                                   [],[]}}},
<0.4327.0>,<0.4335.0>,
                             
{resource,<<"/">>,exchange,<<"dc001-exchange-d">>},
                             {0,nil}}
** Reason for termination ==
** {{shutdown,
         {server_initiated_close,404,
<<"NOT_FOUND - no exchange 'dc001-exchange-u' in vhost '/'">>}},
     {gen_server,call,
         [<0.4350.0>,
          {call,
              {'exchange.bind',0,
<<"federation: dc001-exchange-u -> 
dc001 at host-007.domain.com:dc001-exchange-d B">>,
<<"dc001-exchange-u">>,<<>>,false,[]},
              none,<0.4323.0>},
          infinity]}}

=ERROR REPORT==== 20-Jan-2012::16:30:42 ===
** Generic server <0.12029.0> terminating
** Last message in was {'$gen_cast',maybe_go}
** When Server state == {not_started,
                             {{upstream,
                                  {amqp_params_network,<<"guest">>,
<<"guest">>,<<"/">>,
                                      "host-001.domain.com",5672,0,0,5,
                                      infinity,none,
                                      [#Fun<amqp_auth_mechanisms.plain.3>,
                                       
#Fun<amqp_auth_mechanisms.amqplain.3>],
                                      [],[]},
<<"dc001-exchange-u">>,1000,1,10,none,none,
                                  "host-001"},
                              {resource,<<"/">>,exchange,
<<"dc001-exchange-d">>}}}
** Reason for termination ==
** {{shutdown,
         {server_initiated_close,404,
<<"NOT_FOUND - no exchange 'dc001-exchange-u' in vhost '/'">>}},
     {gen_server,call,
         [<0.12056.0>,
          {call,
              {'exchange.bind',0,
<<"federation: dc001-exchange-u -> 
dc001 at host-007.domain.com:dc001-exchange-d A">>,
<<"dc001-exchange-u">>,<<>>,false,[]},
              none,<0.12029.0>},
          infinity]}}



More information about the rabbitmq-discuss mailing list