Comment 3 for bug 1485895

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to fuel-astute (master)

Reviewed: https://review.openstack.org/215064
Committed: https://git.openstack.org/cgit/stackforge/fuel-astute/commit/?id=6b9e268661b11f981083bac41033223888a6dfcd
Submitter: Jenkins
Branch: master

commit 6b9e268661b11f981083bac41033223888a6dfcd
Author: Evgeniy L <email address hidden>
Date: Thu Aug 20 13:32:39 2015 +0300

    Generate unique names for service queue

    RabbitMQ supports such feature as temporary
    queues with autogenerated names, it means that when you
    define a queue, you leave the name empty, so RabbitMQ generates
    a unique name with "amq.gen-" prefix, after fixing a bug [1]
    with heartbeats, we got working reconnects in case of connectivity
    issues. When reconnect happens, for queues with autogenerated
    names RabbitMQ behaves strangely, it does not delete previous queues
    but creates new one, so for a single worker there is old/not
    used queue and the new one. When new message comes to exchange
    it has 50% chance to get into working queue. If there more
    reconnects happen, more dead queues are created and we have
    less chance to get message in working queue.

    In order to prevent that, each worker should have unique
    name for its service queue, which it will use during worker's
    life time. When reconnect happens, it will try to connect to
    the same queue which was used before.

    RabbitMQ version: 3.3.5
    [1] https://bugs.launchpad.net/fuel/+bug/1483182

    Change-Id: I6a92319af986ee2f76d07ce86d14a6875b836412
    Closes-bug: #1485895