Ports created without binding to a host cannot be attached to a VM

Bug #1546764 reported by Shashank Hegde
12
This bug affects 2 people
Affects Status Importance Assigned to Milestone
networking-arista
Confirmed
Medium
Unassigned

Bug Description

If a port is created using "port-create" without specifying host binding, that port cannot be used to boot a VM using "nova boot --nic port-id=<port>".

When a port is created, it may not have a device id or host as the port is not connected to any resource. Since it is not present on any host, the hostbinding is also empty. So when "neutron port-create" results in create_port_*() calls, the Arista ML2 driver does not store the port in the DB and does not send it to EOS.

When the port is used to boot a VM, it results in update_port_*() calls where the device id and the host binding are set. In the update_port_precommit() the driver checks whether the port exists before updating it. Since it was not stored in the DB during the create_port_precommit(), the port is not found in the DB and so it is not updated. in the update_port_postcommit(), the driver again looks into the DB to check whether the port exists. Since it is not found, the port details are not sent to EOS and so the network required for the VM is not provisioned on the switch interface.

Changed in networking-arista:
status: New → Confirmed
importance: Undecided → Medium
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to networking-arista (stable/liberty)

Fix proposed to branch: stable/liberty
Review: https://review.openstack.org/281575

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Change abandoned on networking-arista (stable/liberty)

Change abandoned by Shashank Hegde (<email address hidden>) on branch: stable/liberty
Review: https://review.openstack.org/281575

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to networking-arista (stable/liberty)

Reviewed: https://review.openstack.org/283323
Committed: https://git.openstack.org/cgit/openstack/networking-arista/commit/?id=40c8c26f64044ee1b5cc5ddce6614e413b41a4e6
Submitter: Jenkins
Branch: stable/liberty

commit 40c8c26f64044ee1b5cc5ddce6614e413b41a4e6
Author: Shashank Hegde <email address hidden>
Date: Fri Feb 19 16:01:15 2016 -0800

    Enabling creation of unattached ports.

    This patch enables creation of ports which are not attached to any
    resources. These ports can later be attached and detached from the
    resource.

    Closes-Bug: 1546764
    Change-Id: Ic04bf5b8aad58a7fed63a9978b9b244fcf5e407f
    (Cherry picked from commit 21408368b75c2a12c339c0cc288e546f6a7eb9c6 )

tags: added: in-stable-liberty
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.