NotificationDispatcher should not use declare_topic_consumer (private method)

Bug #1047015 reported by Erica Windisch
24
This bug affects 3 people
Affects Status Importance Assigned to Milestone
neutron
Invalid
Medium
Rosario Di Somma
oslo-incubator
Fix Released
Medium
Doug Hellmann
Grizzly
Fix Released
Medium
Doug Hellmann

Bug Description

The method being used by NotificationDispatcher is not part of the RPC abstraction, but is an implementation detail of impl_kombu and impl_qpid.

The obvious choices are to make this a required part of the abstraction in openstack common, implementing it in impl_fake and impl_zmq, or changing the behavior of Quantum to use a standard create_consumer call.

Using create_consumer would NOT use notifications. The is currently no way to consume RPC-based notifications per the RPC API.

Revision history for this message
dan wendlandt (danwent) wrote :

Adding gary, yong, and mark, as they are probably best to common on this bug and triage it for RC1.

assigning to rc1 until we decide otherwise.

Changed in quantum:
milestone: none → folsom-rc1
Revision history for this message
Mark McClain (markmcclain) wrote :

We should documented as a known limitation for Folsom. The zmq implementation in os-common needs to be updated to add support for notifications.

dan wendlandt (danwent)
Changed in quantum:
milestone: folsom-rc1 → none
Revision history for this message
Erica Windisch (ewindisch) wrote :

Mark: a problem here is that NotificationDispatcher is using what is intended to be a private method. We have been discussing the addition of a public method that would satisfy this requirement.

dan wendlandt (danwent)
Changed in quantum:
status: New → Confirmed
Revision history for this message
dan wendlandt (danwent) wrote :

Plan is to fix this in Grizzly, likely with change to openstack-common. People with more insight into the issue than me can add more info :)

Changed in quantum:
importance: Undecided → High
Mark McLoughlin (markmc)
affects: openstack-common → oslo
Revision history for this message
Mark McLoughlin (markmc) wrote :
tags: added: rpc-api-review
Changed in oslo:
status: New → Confirmed
importance: Undecided → High
Mark McLoughlin (markmc)
Changed in oslo:
importance: High → Medium
status: Confirmed → Triaged
tags: added: l3-ipam-dhcp
Revision history for this message
Erica Windisch (ewindisch) wrote :

We're running out of time before Grizzly-3. Having Quantum fail to work with ZeroMQ because of a use of a private method of Kombu/Qpid will be pretty ugly.

Mark: do we need a blueprint for this specific issue? I did have a patch to bring the declare_topic_consumer() functionality into impl_zmq. It was reverted due to message envelope changes, but it can be restored without changing the envelope given a dependency on the advanced-matchmaker blueprint (which is presently in code review). Implementing the private method is ugly, but less ugly than having the code not work...

Revision history for this message
Doug Hellmann (doug-hellmann) wrote :

I had this blueprint for ceilometer. I don't know if there's a way to say it belongs in both projects.

https://blueprints.launchpad.net/ceilometer/+spec/move-listener-framework-oslo

Revision history for this message
Mark McClain (markmcclain) wrote :

Downgrading Quantum importance to match Oslo's grade.

Changed in quantum:
importance: High → Medium
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to oslo-incubator (master)

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

Changed in oslo:
assignee: nobody → Doug Hellmann (doug-hellmann)
status: Triaged → In Progress
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to oslo-incubator (master)

Reviewed: https://review.openstack.org/21919
Committed: http://github.com/openstack/oslo-incubator/commit/74a9cbdc86580d256b6cd28ae57cd69213da6c44
Submitter: Jenkins
Branch: master

commit 74a9cbdc86580d256b6cd28ae57cd69213da6c44
Author: Doug Hellmann <email address hidden>
Date: Wed Feb 13 18:02:22 2013 -0500

    Add join_consumer_pool() to RPC connections

    blueprint move-listener-framework-oslo
    bug 1047015
    bug 1111632

    Ceilometer and Quantum use private methods of the RPC connection
    object to configure themselves to listen to a queue shared among a
    group of workers. This change adds a public method to the RPC
    connection to support this use case, without resorting to using
    private API calls.

    Change-Id: I3a89f1dfdcf8accca70cf305f7a31315bea093d8
    Signed-off-by: Doug Hellmann <email address hidden>

Changed in oslo:
status: In Progress → Fix Committed
Changed in quantum:
assignee: nobody → Doug Hellmann (doug-hellmann)
status: Confirmed → In Progress
Changed in quantum:
assignee: Doug Hellmann (doug-hellmann) → Mark McClain (markmcclain)
assignee: Mark McClain (markmcclain) → Carl Perry (carlp)
Thierry Carrez (ttx)
Changed in oslo:
milestone: none → grizzly-3
status: Fix Committed → Fix Released
Changed in quantum:
assignee: Carl Perry (carlp) → Rosario Di Somma (mr-rods)
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to quantum (master)

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

Changed in quantum:
status: In Progress → Fix Committed
Revision history for this message
Mark McClain (markmcclain) wrote :

Recent multi-agent changes have removed this code from Quantum.

Changed in quantum:
status: Fix Committed → Invalid
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Duplicates of this bug

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.