<div dir="ltr"><br><div class="gmail_extra"><br><div class="gmail_quote">2016-07-26 2:15 GMT+03:00 Sam Morrison <span dir="ltr"><<a href="mailto:sorrison@gmail.com" target="_blank">sorrison@gmail.com</a>></span>:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div style="word-wrap:break-word">The queue TTL happens on reply queues and fanout queues. I don’t think it should happen on fanout queues. They should auto delete. I can understand the reason for having them on reply queues though so maybe that would be a way to forward?<div><br></div><div>Or am I missing something and it is needed on fanout queues too?</div></div></blockquote><div><br></div><div>I would say we do need fanout queues to expire for the very same reason we want reply queues to expire instead of auto delete. In case of broken connection, the expiration provides client time to reconnect and continue consuming from the queue. In case of auto-delete queues, it was a frequent case that RabbitMQ deleted the queue before client reconnects ... along with all non-consumed messages in it.</div><div><br></div><div>Thanks,</div><div><br></div><div>Dmitry</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div style="word-wrap:break-word"><div><br></div><div>Cheers,</div><div>Sam</div><div><div class="h5"><div><br></div><div><div><br></div><div><br><div><div><blockquote type="cite"><div>On 25 Jul 2016, at 8:47 PM, Dmitry Mescheryakov <<a href="mailto:dmescheryakov@mirantis.com" target="_blank">dmescheryakov@mirantis.com</a>> wrote:</div><br><div><div dir="ltr">Sam,<div><br></div><div>For your case I would suggest to lower rabbit_transient_queues_ttl until you are comfortable with volume of messages which comes during that time. Setting the parameter to 1 will essentially replicate bahaviour of auto_delete queues. But I would suggest not to set it that low, as otherwise your OpenStack will suffer from the original bug. Probably a value like 20 seconds should work in most cases.</div><div><br></div><div>I think that there is a space for improvement here - we can delete reply and fanout queues on graceful shutdown. But I am not sure if it will be easy to implement, as it requires services (Nova, Neutron, etc.) to stop RPC server on sigint and I don't know if they do it right now.</div><div><br></div><div>I don't think we can make case with sigkill any better. Other than that, the issue could be investigated on Neutron side, maybe number of messages could be reduced there.</div><div><br></div><div>Thanks,</div><div><br></div><div>Dmitry</div></div><div class="gmail_extra"><br><div class="gmail_quote">2016-07-25 9:27 GMT+03:00 Sam Morrison <span dir="ltr"><<a href="mailto:sorrison@gmail.com" target="_blank">sorrison@gmail.com</a>></span>:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">We recently upgraded to Liberty and have come across some issues with queue build ups.<br>
<br>
This is due to changes in rabbit to set queue expiries as opposed to queue auto delete.<br>
See <a href="https://bugs.launchpad.net/oslo.messaging/+bug/1515278" rel="noreferrer" target="_blank">https://bugs.launchpad.net/oslo.messaging/+bug/1515278</a> for more information.<br>
<br>
The fix for this bug is in liberty and it does fix an issue however it causes another one.<br>
<br>
Every time you restart something that has a fanout queue. Eg. cinder-scheduler or the neutron agents you will have<br>
a queue in rabbit that is still bound to the rabbitmq exchange (and so still getting messages in) but no consumers.<br>
<br>
These messages in these queues are basically rubbish and don’t need to exist. Rabbit will delete these queues after 10 mins (although the default in master is now changed to 30 mins)<br>
<br>
During this time the queue will grow and grow with messages. This sets off our nagios alerts and our ops guys have to deal with something that isn’t really an issue. They basically delete the queue.<br>
<br>
A bad scenario is when you make a change to your cloud that means all your 1000 neutron agents are restarted, this causes a couple of dead queues per agent to hang around. (port updates and security group updates) We get around 25 messages / second on these queues and so you can see after 10 minutes we have a ton of messages in these queues.<br>
<br>
1000 x 2 x 25 x 600 = 30,000,000 messages in 10 minutes to be precise.<br>
<br>
Has anyone else been suffering with this before a raise a bug?<br>
<br>
Cheers,<br>
Sam<br>
<br>
<br>
_______________________________________________<br>
OpenStack-operators mailing list<br>
<a href="mailto:OpenStack-operators@lists.openstack.org" target="_blank">OpenStack-operators@lists.openstack.org</a><br>
<a href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-operators" rel="noreferrer" target="_blank">http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-operators</a><br>
</blockquote></div><br></div>
</div></blockquote></div><br></div></div></div></div></div></div></blockquote></div><br></div></div>