I'm trying to get the Ruby-AMQP gem working with RabbitMQ's federation plugin.
<div><br></div><div>I have a federation set up as following:</div><div><pre style="margin-top:15px;margin-bottom:15px;padding:6px 10px;border:1px solid rgb(204,204,204);font-size:13px;font-family:Consolas,Menlo,'Liberation Mono',Courier,monospace;background-color:rgb(248,248,248);line-height:19px;overflow:auto;border-top-left-radius:3px;border-top-right-radius:3px;border-bottom-right-radius:3px;border-bottom-left-radius:3px;color:rgb(51,51,51)">
<code style="margin:0px;padding:0px;border:none;font-size:12px;font-family:Consolas,Menlo,'Liberation Mono',Courier,monospace;word-wrap:break-word;background-color:transparent;border-top-left-radius:3px;border-top-right-radius:3px;border-bottom-right-radius:3px;border-bottom-left-radius:3px">{rabbitmq_federation,
[ {exchanges, [[{exchange, "xanview"},
{virtual_host, "/"},
{type, "topic"},
{durable, true},
{auto_delete, false},
{internal, false},
{upstream_set, "my-upstreams"}]
]}, </code></pre></div><div>It appears in the web interface as:</div><div><pre style="margin-top:15px;margin-bottom:15px;padding:6px 10px;border:1px solid rgb(204,204,204);font-size:13px;font-family:Consolas,Menlo,'Liberation Mono',Courier,monospace;background-color:rgb(248,248,248);line-height:19px;overflow:auto;border-top-left-radius:3px;border-top-right-radius:3px;border-bottom-right-radius:3px;border-bottom-left-radius:3px;color:rgb(51,51,51)">
<code style="margin:0px;padding:0px;border:none;font-size:12px;font-family:Consolas,Menlo,'Liberation Mono',Courier,monospace;word-wrap:break-word;background-color:transparent;border-top-left-radius:3px;border-top-right-radius:3px;border-bottom-right-radius:3px;border-bottom-left-radius:3px">Type x-federation
Parameters arguments: upstream-set: my-upstreams
type: topic
durable: true</code></pre></div><div>I try to use it in Ruby in a consumer like this:</div><div><div style="line-height:20px;color:rgb(51,51,51);font-size:13px;font-family:Helvetica,arial,freesans,clean,sans-serif;margin:0px;border:0px;padding:0px">
<pre style="margin-top:15px;margin-bottom:15px;padding:6px 10px;border:1px solid rgb(204,204,204);font-family:Consolas,Menlo,'Liberation Mono',Courier,monospace;background-color:rgb(248,248,248);line-height:19px;overflow:auto;border-top-left-radius:3px;border-top-right-radius:3px;border-bottom-right-radius:3px;border-bottom-left-radius:3px">
<span style="margin:0px;padding:0px;border:0px">exchange</span> <span style="margin:0px;padding:0px;border:0px;font-weight:bold">=</span> <span style="margin:0px;padding:0px;border:0px;color:rgb(0,128,128)">AMQP</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">::</span><span style="margin:0px;padding:0px;border:0px;color:rgb(0,128,128)">Exchange</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">.</span><span style="margin:0px;padding:0px;border:0px">new</span><span style="margin:0px;padding:0px;border:0px">(</span><span style="margin:0px;padding:0px;border:0px">channel</span><span style="margin:0px;padding:0px;border:0px">,</span> <span style="margin:0px;padding:0px;border:0px;color:rgb(221,17,68)">"x-federation"</span><span style="margin:0px;padding:0px;border:0px">,</span> <span style="margin:0px;padding:0px;border:0px;color:rgb(221,17,68)">"my-exchange"</span><span style="margin:0px;padding:0px;border:0px">,</span> <span style="margin:0px;padding:0px;border:0px;color:rgb(153,0,115)">:durable</span> <span style="margin:0px;padding:0px;border:0px;font-weight:bold">=></span> <span style="margin:0px;padding:0px;border:0px;font-weight:bold">true</span><span style="margin:0px;padding:0px;border:0px">)</span>
</pre><div><span style="margin:0px;padding:0px;border:0px">However in the RabbitMQ config I get this error:</span></div><div><span style="margin:0px;padding:0px;border:0px"><pre style="margin-top:15px;margin-bottom:15px;padding:6px 10px;border:1px solid rgb(204,204,204);font-family:Consolas,Menlo,'Liberation Mono',Courier,monospace;background-color:rgb(248,248,248);line-height:19px;overflow:auto;border-top-left-radius:3px;border-top-right-radius:3px;border-bottom-right-radius:3px;border-bottom-left-radius:3px">
<code style="margin:0px;padding:0px;border:none;font-size:12px;font-family:Consolas,Menlo,'Liberation Mono',Courier,monospace;word-wrap:break-word;background-color:transparent;border-top-left-radius:3px;border-top-right-radius:3px;border-bottom-right-radius:3px;border-bottom-left-radius:3px">connection <0.16597.1>, channel 2 - error:
{amqp_error,precondition_failed,
"inequivalent arg 'type'for exchange 'xanview' in vhost '/': received none but current is the value 'topic' of type 'longstr'",
'exchange.declare'}</code></pre></span></div></div></div><div>It seems something in the Ruby-AMQP gem is preventing me from using an exchange type "x-federation"?</div><div><br></div><div>Also when I try to consume messages sent to a federated exchange using your typical:</div>
<div><pre style="margin-top:15px;margin-bottom:15px;padding:6px 10px;border:1px solid rgb(204,204,204);font-size:13px;font-family:Consolas,Menlo,'Liberation Mono',Courier,monospace;background-color:rgb(248,248,248);line-height:19px;overflow:auto;border-top-left-radius:3px;border-top-right-radius:3px;border-bottom-right-radius:3px;border-bottom-left-radius:3px;color:rgb(51,51,51)">
<span style="margin:0px;padding:0px;border:0px;color:rgb(0,128,128)">AMQP</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">.</span><span style="margin:0px;padding:0px;border:0px">start</span><span style="margin:0px;padding:0px;border:0px">(</span><span style="margin:0px;padding:0px;border:0px;color:rgb(221,17,68)">'amqp://guest:guest@localhost:25672'</span><span style="margin:0px;padding:0px;border:0px">)</span> <span style="margin:0px;padding:0px;border:0px;font-weight:bold">do</span> <span style="margin:0px;padding:0px;border:0px;font-weight:bold">|</span><span style="margin:0px;padding:0px;border:0px">connection</span><span style="margin:0px;padding:0px;border:0px">,</span> <span style="margin:0px;padding:0px;border:0px">open_ok</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">|</span>
<span style="margin:0px;padding:0px;border:0px">channel</span> <span style="margin:0px;padding:0px;border:0px;font-weight:bold">=</span> <span style="margin:0px;padding:0px;border:0px;color:rgb(0,128,128)">AMQP</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">::</span><span style="margin:0px;padding:0px;border:0px;color:rgb(0,128,128)">Channel</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">.</span><span style="margin:0px;padding:0px;border:0px">new</span><span style="margin:0px;padding:0px;border:0px">(</span><span style="margin:0px;padding:0px;border:0px">connection</span><span style="margin:0px;padding:0px;border:0px">)</span>
<span style="margin:0px;padding:0px;border:0px">channel</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">.</span><span style="margin:0px;padding:0px;border:0px">queue</span><span style="margin:0px;padding:0px;border:0px">(</span><span style="margin:0px;padding:0px;border:0px;color:rgb(221,17,68)">""</span><span style="margin:0px;padding:0px;border:0px">,</span> <span style="margin:0px;padding:0px;border:0px;color:rgb(153,0,115)">:durable</span> <span style="margin:0px;padding:0px;border:0px;font-weight:bold">=></span> <span style="margin:0px;padding:0px;border:0px;font-weight:bold">true</span><span style="margin:0px;padding:0px;border:0px">)</span> <span style="margin:0px;padding:0px;border:0px;font-weight:bold">do</span> <span style="margin:0px;padding:0px;border:0px;font-weight:bold">|</span><span style="margin:0px;padding:0px;border:0px">queue</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">|</span>
<span style="margin:0px;padding:0px;border:0px">queue</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">.</span><span style="margin:0px;padding:0px;border:0px">bind</span><span style="margin:0px;padding:0px;border:0px">(</span><span style="margin:0px;padding:0px;border:0px;color:rgb(221,17,68)">'xanview'</span><span style="margin:0px;padding:0px;border:0px">,</span> <span style="margin:0px;padding:0px;border:0px;color:rgb(153,0,115)">:routing_key</span> <span style="margin:0px;padding:0px;border:0px;font-weight:bold">=></span> <span style="margin:0px;padding:0px;border:0px;color:rgb(221,17,68)">'#'</span><span style="margin:0px;padding:0px;border:0px">)</span>
<span style="margin:0px;padding:0px;border:0px">queue</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">.</span><span style="margin:0px;padding:0px;border:0px">subscribe</span> <span style="margin:0px;padding:0px;border:0px;font-weight:bold">do</span> <span style="margin:0px;padding:0px;border:0px;font-weight:bold">|</span><span style="margin:0px;padding:0px;border:0px">metadata</span><span style="margin:0px;padding:0px;border:0px">,</span> <span style="margin:0px;padding:0px;border:0px">payload</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">|</span>
<span style="margin:0px;padding:0px;border:0px;color:rgb(0,134,179)">puts</span> <span style="margin:0px;padding:0px;border:0px;color:rgb(221,17,68)">"Recieved message: </span><span style="margin:0px;padding:0px;border:0px;color:rgb(221,17,68)">#{</span><span style="margin:0px;padding:0px;border:0px">payload</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">.</span><span style="margin:0px;padding:0px;border:0px">inspect</span><span style="margin:0px;padding:0px;border:0px;color:rgb(221,17,68)">}</span><span style="margin:0px;padding:0px;border:0px;color:rgb(221,17,68)">."</span>
<span style="margin:0px;padding:0px;border:0px;font-weight:bold">end</span>
<span style="margin:0px;padding:0px;border:0px;font-weight:bold">end</span>
<span style="margin:0px;padding:0px;border:0px;font-weight:bold">end</span></pre></div><div>I get this exception for the first message received:</div><div><pre style="margin-top:15px;margin-bottom:15px;padding:6px 10px;border:1px solid rgb(204,204,204);font-size:13px;font-family:Consolas,Menlo,'Liberation Mono',Courier,monospace;background-color:rgb(248,248,248);line-height:19px;overflow:auto;border-top-left-radius:3px;border-top-right-radius:3px;border-bottom-right-radius:3px;border-bottom-left-radius:3px;color:rgb(51,51,51)">
<span style="margin:0px;padding:0px;border:0px;color:rgb(0,153,38)">/usr/</span><span style="margin:0px;padding:0px;border:0px">local</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">/</span><span style="margin:0px;padding:0px;border:0px">rvm</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">/</span><span style="margin:0px;padding:0px;border:0px">gems</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">/</span><span style="margin:0px;padding:0px;border:0px">ruby</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">-</span><span style="margin:0px;padding:0px;border:0px;color:rgb(0,153,153)">1</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">.</span><span style="margin:0px;padding:0px;border:0px;color:rgb(0,153,153)">9</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">.</span><span style="margin:0px;padding:0px;border:0px;color:rgb(0,153,153)">3</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">-</span><span style="margin:0px;padding:0px;border:0px">p194</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">/</span><span style="margin:0px;padding:0px;border:0px">gems</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">/</span><span style="margin:0px;padding:0px;border:0px">amq</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">-</span><span style="margin:0px;padding:0px;border:0px">protocol</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">-</span><span style="margin:0px;padding:0px;border:0px;color:rgb(0,153,153)">0</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">.</span><span style="margin:0px;padding:0px;border:0px;color:rgb(0,153,153)">9</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">.</span><span style="margin:0px;padding:0px;border:0px;color:rgb(0,153,153)">3</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">/</span><span style="margin:0px;padding:0px;border:0px">lib</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">/</span><span style="margin:0px;padding:0px;border:0px">amq</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">/</span><span style="margin:0px;padding:0px;border:0px">protocol</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">/</span><span style="margin:0px;padding:0px;border:0px">table</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">.</span><span style="margin:0px;padding:0px;border:0px">rb</span><span style="margin:0px;padding:0px;border:0px">:</span><span style="margin:0px;padding:0px;border:0px;color:rgb(0,153,153)">89</span><span style="margin:0px;padding:0px;border:0px;color:rgb(153,0,115)">:in</span> <span style="margin:0px;padding:0px;border:0px;color:rgb(221,17,68)">`decode': NotImplementedError (NotImplementedError)</span>
<span style="margin:0px;padding:0px;border:0px;color:rgb(221,17,68)"> from /usr/local/rvm/gems/ruby-1.9.3-p194/gems/amq-protocol-0.9.3/lib/amq/protocol/table_value_decoder.rb:144:in `</span><span style="margin:0px;padding:0px;border:0px">decode_hash</span><span style="margin:0px;padding:0px;border:0px;color:rgb(221,17,68)">'</span>
<span style="margin:0px;padding:0px;border:0px;color:rgb(221,17,68)"> from /usr/local/rvm/gems/ruby-1.9.3-p194/gems/amq-protocol-0.9.3/lib/amq/protocol/table_value_decoder.rb:46:in `decode_array'</span>
<span style="margin:0px;padding:0px;border:0px">from</span> <span style="margin:0px;padding:0px;border:0px;color:rgb(0,153,38)">/usr/</span><span style="margin:0px;padding:0px;border:0px">local</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">/</span><span style="margin:0px;padding:0px;border:0px">rvm</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">/</span><span style="margin:0px;padding:0px;border:0px">gems</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">/</span><span style="margin:0px;padding:0px;border:0px">ruby</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">-</span><span style="margin:0px;padding:0px;border:0px;color:rgb(0,153,153)">1</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">.</span><span style="margin:0px;padding:0px;border:0px;color:rgb(0,153,153)">9</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">.</span><span style="margin:0px;padding:0px;border:0px;color:rgb(0,153,153)">3</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">-</span><span style="margin:0px;padding:0px;border:0px">p194</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">/</span><span style="margin:0px;padding:0px;border:0px">gems</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">/</span><span style="margin:0px;padding:0px;border:0px">amq</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">-</span><span style="margin:0px;padding:0px;border:0px">protocol</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">-</span><span style="margin:0px;padding:0px;border:0px;color:rgb(0,153,153)">0</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">.</span><span style="margin:0px;padding:0px;border:0px;color:rgb(0,153,153)">9</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">.</span><span style="margin:0px;padding:0px;border:0px;color:rgb(0,153,153)">3</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">/</span><span style="margin:0px;padding:0px;border:0px">lib</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">/</span><span style="margin:0px;padding:0px;border:0px">amq</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">/</span><span style="margin:0px;padding:0px;border:0px">protocol</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">/</span><span style="margin:0px;padding:0px;border:0px">table</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">.</span><span style="margin:0px;padding:0px;border:0px">rb</span><span style="margin:0px;padding:0px;border:0px">:</span><span style="margin:0px;padding:0px;border:0px;color:rgb(0,153,153)">99</span><span style="margin:0px;padding:0px;border:0px;color:rgb(153,0,115)">:in</span> <span style="margin:0px;padding:0px;border:0px;color:rgb(221,17,68)">`decode'</span>
<span style="margin:0px;padding:0px;border:0px;color:rgb(221,17,68)"> from /usr/local/rvm/gems/ruby-1.9.3-p194/gems/amq-protocol-0.9.3/lib/amq/protocol/client.rb:1560:in `</span><span style="margin:0px;padding:0px;border:0px">block</span> <span style="margin:0px;padding:0px;border:0px;font-weight:bold">in</span> <span style="margin:0px;padding:0px;border:0px">decode_properties</span><span style="margin:0px;padding:0px;border:0px;color:rgb(221,17,68)">'</span>
<span style="margin:0px;padding:0px;border:0px;color:rgb(221,17,68)"> from /usr/local/rvm/gems/ruby-1.9.3-p194/gems/amq-protocol-0.9.3/lib/amq/protocol/client.rb:1543:in `each'</span>
<span style="margin:0px;padding:0px;border:0px">from</span> <span style="margin:0px;padding:0px;border:0px;color:rgb(0,153,38)">/usr/</span><span style="margin:0px;padding:0px;border:0px">local</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">/</span><span style="margin:0px;padding:0px;border:0px">rvm</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">/</span><span style="margin:0px;padding:0px;border:0px">gems</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">/</span><span style="margin:0px;padding:0px;border:0px">ruby</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">-</span><span style="margin:0px;padding:0px;border:0px;color:rgb(0,153,153)">1</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">.</span><span style="margin:0px;padding:0px;border:0px;color:rgb(0,153,153)">9</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">.</span><span style="margin:0px;padding:0px;border:0px;color:rgb(0,153,153)">3</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">-</span><span style="margin:0px;padding:0px;border:0px">p194</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">/</span><span style="margin:0px;padding:0px;border:0px">gems</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">/</span><span style="margin:0px;padding:0px;border:0px">amq</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">-</span><span style="margin:0px;padding:0px;border:0px">protocol</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">-</span><span style="margin:0px;padding:0px;border:0px;color:rgb(0,153,153)">0</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">.</span><span style="margin:0px;padding:0px;border:0px;color:rgb(0,153,153)">9</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">.</span><span style="margin:0px;padding:0px;border:0px;color:rgb(0,153,153)">3</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">/</span><span style="margin:0px;padding:0px;border:0px">lib</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">/</span><span style="margin:0px;padding:0px;border:0px">amq</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">/</span><span style="margin:0px;padding:0px;border:0px">protocol</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">/</span><span style="margin:0px;padding:0px;border:0px">client</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">.</span><span style="margin:0px;padding:0px;border:0px">rb</span><span style="margin:0px;padding:0px;border:0px">:</span><span style="margin:0px;padding:0px;border:0px;color:rgb(0,153,153)">1543</span><span style="margin:0px;padding:0px;border:0px;color:rgb(153,0,115)">:in</span> <span style="margin:0px;padding:0px;border:0px;color:rgb(221,17,68)">`decode_properties'</span>
<span style="margin:0px;padding:0px;border:0px;color:rgb(221,17,68)"> from /usr/local/rvm/gems/ruby-1.9.3-p194/gems/amq-protocol-0.9.3/lib/amq/protocol/frame.rb:142:in `</span><span style="margin:0px;padding:0px;border:0px">decode_payload</span><span style="margin:0px;padding:0px;border:0px;color:rgb(221,17,68)">'</span>
<span style="margin:0px;padding:0px;border:0px;color:rgb(221,17,68)"> from /usr/local/rvm/gems/ruby-1.9.3-p194/gems/amq-protocol-0.9.3/lib/amq/protocol/frame.rb:115:in `body_size'</span>
<span style="margin:0px;padding:0px;border:0px">from</span> <span style="margin:0px;padding:0px;border:0px;color:rgb(0,153,38)">/usr/</span><span style="margin:0px;padding:0px;border:0px">local</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">/</span><span style="margin:0px;padding:0px;border:0px">rvm</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">/</span><span style="margin:0px;padding:0px;border:0px">gems</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">/</span><span style="margin:0px;padding:0px;border:0px">ruby</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">-</span><span style="margin:0px;padding:0px;border:0px;color:rgb(0,153,153)">1</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">.</span><span style="margin:0px;padding:0px;border:0px;color:rgb(0,153,153)">9</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">.</span><span style="margin:0px;padding:0px;border:0px;color:rgb(0,153,153)">3</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">-</span><span style="margin:0px;padding:0px;border:0px">p194</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">/</span><span style="margin:0px;padding:0px;border:0px">gems</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">/</span><span style="margin:0px;padding:0px;border:0px">amq</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">-</span><span style="margin:0px;padding:0px;border:0px">client</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">-</span><span style="margin:0px;padding:0px;border:0px;color:rgb(0,153,153)">0</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">.</span><span style="margin:0px;padding:0px;border:0px;color:rgb(0,153,153)">9</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">.</span><span style="margin:0px;padding:0px;border:0px;color:rgb(0,153,153)">3</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">/</span><span style="margin:0px;padding:0px;border:0px">lib</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">/</span><span style="margin:0px;padding:0px;border:0px">amq</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">/</span><span style="margin:0px;padding:0px;border:0px">client</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">/</span><span style="margin:0px;padding:0px;border:0px">async</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">/</span><span style="margin:0px;padding:0px;border:0px">adapter</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">.</span><span style="margin:0px;padding:0px;border:0px">rb</span><span style="margin:0px;padding:0px;border:0px">:</span><span style="margin:0px;padding:0px;border:0px;color:rgb(0,153,153)">675</span><span style="margin:0px;padding:0px;border:0px;color:rgb(153,0,115)">:in</span> <span style="margin:0px;padding:0px;border:0px;color:rgb(221,17,68)">`content_complete?'</span>
<span style="margin:0px;padding:0px;border:0px;color:rgb(221,17,68)"> from /usr/local/rvm/gems/ruby-1.9.3-p194/gems/amq-client-0.9.3/lib/amq/client/async/adapter.rb:667:in `</span><span style="margin:0px;padding:0px;border:0px">frameset_complete?</span><span style="margin:0px;padding:0px;border:0px;color:rgb(221,17,68)">'</span>
<span style="margin:0px;padding:0px;border:0px;color:rgb(221,17,68)"> from /usr/local/rvm/gems/ruby-1.9.3-p194/gems/amq-client-0.9.3/lib/amq/client/async/adapter.rb:518:in `receive_frame'</span>
<span style="margin:0px;padding:0px;border:0px">from</span> <span style="margin:0px;padding:0px;border:0px;color:rgb(0,153,38)">/usr/</span><span style="margin:0px;padding:0px;border:0px">local</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">/</span><span style="margin:0px;padding:0px;border:0px">rvm</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">/</span><span style="margin:0px;padding:0px;border:0px">gems</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">/</span><span style="margin:0px;padding:0px;border:0px">ruby</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">-</span><span style="margin:0px;padding:0px;border:0px;color:rgb(0,153,153)">1</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">.</span><span style="margin:0px;padding:0px;border:0px;color:rgb(0,153,153)">9</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">.</span><span style="margin:0px;padding:0px;border:0px;color:rgb(0,153,153)">3</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">-</span><span style="margin:0px;padding:0px;border:0px">p194</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">/</span><span style="margin:0px;padding:0px;border:0px">gems</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">/</span><span style="margin:0px;padding:0px;border:0px">amq</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">-</span><span style="margin:0px;padding:0px;border:0px">client</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">-</span><span style="margin:0px;padding:0px;border:0px;color:rgb(0,153,153)">0</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">.</span><span style="margin:0px;padding:0px;border:0px;color:rgb(0,153,153)">9</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">.</span><span style="margin:0px;padding:0px;border:0px;color:rgb(0,153,153)">3</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">/</span><span style="margin:0px;padding:0px;border:0px">lib</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">/</span><span style="margin:0px;padding:0px;border:0px">amq</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">/</span><span style="margin:0px;padding:0px;border:0px">client</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">/</span><span style="margin:0px;padding:0px;border:0px">async</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">/</span><span style="margin:0px;padding:0px;border:0px">adapters</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">/</span><span style="margin:0px;padding:0px;border:0px">event_machine</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">.</span><span style="margin:0px;padding:0px;border:0px">rb</span><span style="margin:0px;padding:0px;border:0px">:</span><span style="margin:0px;padding:0px;border:0px;color:rgb(0,153,153)">327</span><span style="margin:0px;padding:0px;border:0px;color:rgb(153,0,115)">:in</span> <span style="margin:0px;padding:0px;border:0px;color:rgb(221,17,68)">`receive_data'</span>
<span style="margin:0px;padding:0px;border:0px;color:rgb(221,17,68)"> from /usr/local/rvm/gems/ruby-1.9.3-p194/gems/eventmachine-0.12.10/lib/eventmachine.rb:256:in `</span><span style="margin:0px;padding:0px;border:0px">run_machine</span><span style="margin:0px;padding:0px;border:0px;color:rgb(221,17,68)">'</span>
<span style="margin:0px;padding:0px;border:0px;color:rgb(221,17,68)"> from /usr/local/rvm/gems/ruby-1.9.3-p194/gems/eventmachine-0.12.10/lib/eventmachine.rb:256:in `run'</span>
<span style="margin:0px;padding:0px;border:0px">from</span> <span style="margin:0px;padding:0px;border:0px;color:rgb(0,153,38)">/usr/</span><span style="margin:0px;padding:0px;border:0px">local</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">/</span><span style="margin:0px;padding:0px;border:0px">rvm</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">/</span><span style="margin:0px;padding:0px;border:0px">gems</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">/</span><span style="margin:0px;padding:0px;border:0px">ruby</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">-</span><span style="margin:0px;padding:0px;border:0px;color:rgb(0,153,153)">1</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">.</span><span style="margin:0px;padding:0px;border:0px;color:rgb(0,153,153)">9</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">.</span><span style="margin:0px;padding:0px;border:0px;color:rgb(0,153,153)">3</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">-</span><span style="margin:0px;padding:0px;border:0px">p194</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">/</span><span style="margin:0px;padding:0px;border:0px">gems</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">/</span><span style="margin:0px;padding:0px;border:0px">amqp</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">-</span><span style="margin:0px;padding:0px;border:0px;color:rgb(0,153,153)">0</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">.</span><span style="margin:0px;padding:0px;border:0px;color:rgb(0,153,153)">9</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">.</span><span style="margin:0px;padding:0px;border:0px;color:rgb(0,153,153)">6</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">/</span><span style="margin:0px;padding:0px;border:0px">lib</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">/</span><span style="margin:0px;padding:0px;border:0px">amqp</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">/</span><span style="margin:0px;padding:0px;border:0px">connection</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">.</span><span style="margin:0px;padding:0px;border:0px">rb</span><span style="margin:0px;padding:0px;border:0px">:</span><span style="margin:0px;padding:0px;border:0px;color:rgb(0,153,153)">38</span><span style="margin:0px;padding:0px;border:0px;color:rgb(153,0,115)">:in</span> <span style="margin:0px;padding:0px;border:0px;color:rgb(221,17,68)">`start'</span>
<span style="margin:0px;padding:0px;border:0px;color:rgb(221,17,68)"> from client1.rb:7:in `</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold"><</span><span style="margin:0px;padding:0px;border:0px">main</span><span style="margin:0px;padding:0px;border:0px;font-weight:bold">></span><span style="margin:0px;padding:0px;border:0px;color:rgb(166,23,23);background-color:rgb(227,210,210)">'</span></pre>
</div><div>Any advice would be greatly appreciated. Maybe someone has an example of using RabbitMQ Federation with the Ruby-AMQP gem?</div><div><br></div><div>Thank you,</div><div><br></div><div>Roman</div>