allow ports to be created on networks that do not exist in nvp

Bug #1179327 reported by Aaron Rosen
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
neutron
Fix Released
Low
Aaron Rosen

Bug Description

If a network exists in the quantum database but not in NVP we should allow someone to create a port on this network though set the status to error. The reason for allowing this is if one deletes a network from NVP and the dhcp agent goes to create it's dhcp port on this network currently an error will be raised to the agent and it will enter a constant cycle of resyncing.

Traceback (most recent call last):
  File "/opt/stack/quantum/quantum/plugins/nicira/QuantumPlugin.py", line 1190, in create_port
    port_create_func(context, port_data)
  File "/opt/stack/quantum/quantum/plugins/nicira/QuantumPlugin.py", line 374, in _nvp_create_port
    port_data)
  File "/opt/stack/quantum/quantum/plugins/nicira/QuantumPlugin.py", line 340, in _nvp_find_lswitch_for_port
    allow_extra_lswitches)
  File "/opt/stack/quantum/quantum/plugins/nicira/QuantumPlugin.py", line 738, in _handle_lswitch_selection
    lswitches = nvplib.get_lswitches(cluster, network.id)
  File "/opt/stack/quantum/quantum/plugins/nicira/nvplib.py", line 262, in get_lswitches
    cluster=cluster)
  File "/opt/stack/quantum/quantum/plugins/nicira/nvplib.py", line 208, in do_single_request
    raise exception.NotFound()
NotFound: An unknown exception occurred.
2013-05-12 17:02:20 ERROR [quantum.api.v2.resource] create failed
Traceback (most recent call last):
  File "/opt/stack/quantum/quantum/api/v2/resource.py", line 82, in resource
    result = method(request=request, **args)
  File "/opt/stack/quantum/quantum/api/v2/base.py", line 381, in create
    obj = obj_creator(request.context, **kwargs)
  File "/opt/stack/quantum/quantum/plugins/nicira/QuantumPlugin.py", line 1197, in create_port
    raise e
NotFound: An unknown exception occurred.

Tags: nvp
Aaron Rosen (arosen)
Changed in quantum:
assignee: nobody → Aaron Rosen (arosen)
tags: added: nvp
Aaron Rosen (arosen)
tags: added: grizzly-backport-potential
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/28915

Changed in quantum:
status: New → In Progress
Aaron Rosen (arosen)
Changed in quantum:
importance: Undecided → Low
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to quantum (master)

Reviewed: https://review.openstack.org/28915
Committed: http://github.com/openstack/quantum/commit/dbee58e7bb2ed1df6bb513247ec7ac07387ff5d1
Submitter: Jenkins
Branch: master

commit dbee58e7bb2ed1df6bb513247ec7ac07387ff5d1
Author: Aaron Rosen <email address hidden>
Date: Sun May 12 17:25:04 2013 -0700

    Allow ports to be created on networks that do not exist in NVP

    If a network exists in the quantum database but not in NVP we should allow
    someone to create a port on this network and set the status to ERROR. The
    reason for this is if one deletes a network from NVP and when the dhcp agent
    goes to create it's dhcp port on this network an error will be raised to the
    agent and it will enter a constant state of resyncing.

    This patch also adds a unit test for update_port() for the same situation.

    Fixes bug 1179327

    Change-Id: Ie77fc48d11644b820c0cc3b3fa341856e36f8511

Changed in quantum:
status: In Progress → Fix Committed
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to quantum (stable/grizzly)

Fix proposed to branch: stable/grizzly
Review: https://review.openstack.org/29687

Changed in quantum:
milestone: none → havana-1
Thierry Carrez (ttx)
Changed in quantum:
status: Fix Committed → Fix Released
Thierry Carrez (ttx)
Changed in neutron:
milestone: havana-1 → 2013.2
Alan Pevec (apevec)
tags: removed: grizzly-backport-potential
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

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