rabbit/qpid connection pool implementation is not safe

Bug #1397925 reported by Mehdi Abaakouk
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Mehdi Abaakouk

Bug Description


The current implementation of the connection pool is not, it relies on a global state (a class variable). And can be broken in case of two transports object use the same broker, when one of the transport is 'cleanup' it destroy the pool and then break the remaining transport object.

Obviously, it's not very useful to create two transports object to the same broker.


Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to oslo.messaging (master)

Fix proposed to branch: master
Review: https://review.openstack.org/138029

Changed in oslo.messaging:
assignee: nobody → Mehdi Abaakouk (sileht)
status: New → In Progress
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to oslo.messaging (master)

Reviewed: https://review.openstack.org/138029
Committed: https://git.openstack.org/cgit/openstack/oslo.messaging/commit/?id=f3370da11a867bae287d7f549a671811e8b399ef
Submitter: Jenkins
Branch: master

commit f3370da11a867bae287d7f549a671811e8b399ef
Author: Mehdi Abaakouk <email address hidden>
Date: Mon Dec 1 11:11:05 2014 +0100

    Don't share connection pool between driver object

    Each driver instance must use it's own connection pool.

    This removes the last global state of qpid and rabbitmq driver
    Make the relation between classes more simple.

    The previous behavior was not very safe, as explained in the bug report.

    And also, this is a first step to replace this custom connection pool
    handling by the kombu one.

    Closes bug: #1397925
    Partial bug: #1397339

    Change-Id: Iecd2b39c76417d9ac081d46810f72eb6e38edfda

Changed in oslo.messaging:
status: In Progress → Fix Committed
Mehdi Abaakouk (sileht)
Changed in oslo.messaging:
milestone: none → 1.5.0
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers