<div dir="ltr">Hello RabbitMQ gurus,<div><br></div><div>After upgrading a customer site from RabbitMQ 3.1.1 to 3.1.5 (on RHEL 6.2), we had a few durable queues that did not seem to be working correctly (they weren't receiving any messages). �It should be noted that this is a cluster of 5 servers with queue mirroring set to exactly 2 nodes.</div>
<div><br></div><div>During troubleshooting, we deleted and recreated the queues. �After creating the queues, we attempted to rebind them to the exchange (in the web management GUI), but this always failed.�</div><div><br>
</div><div>[In the following example, names have been changed to protect the innocent]. �After attempting to bind durable mirrored 'my.queue' to durable direct exchange 'my.exchange' using routing key 'my.queue' (in vhost 'abc'), we get the following error:</div>
<div><br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">NOT_FOUND - no binding my.queue between exchange 'my.exchange' in vhost 'abc' and queue 'my.queue' in vhost 'abc'</blockquote>
<div><br></div><div>This behavior in the web console confirms the behavior we see when trying to bind programmatically in our app (we get an AMQP 404 error).</div><div><br></div><div>Here is the kicker-- if we change the routing key by just one character, it works flawlessly! �Or if we don't change anything, but add "foo=bar" to the binding arguments, it also works! �So it seems that because we did this binding in the past, and it was somehow corrupted, it won't allow us to re-bind with the same arguments now. �As noted above, even after deleting and re-creating the queue, it still won't let us do that one binding we need.</div>
<div><br></div><div>Is there any way we can fix this easily without interrupting the customer too much? �Or is it likely we will have to wipe mnesia on all the nodes and rebuild the cluster (my fear is that this may be the only way)?</div>
<div><br></div><div>Is there anything I can or should do on my end to further debug / investigate?</div><div><br></div><div>Thanks for your help!</div><div><br></div><div>-Chris</div></div>