Concurrent interface attachment corrupts info cache

Bug #1541838 reported by Sergii Rizvan
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Mirantis OpenStack
Invalid
High
MOS Nova
6.1.x
Fix Released
High
Sergii Rizvan
7.0.x
Fix Released
High
Sergii Rizvan
8.0.x
Invalid
High
MOS Nova
9.x
Invalid
High
MOS Nova

Bug Description

Upstream bug: https://bugs.launchpad.net/nova/+bug/1467581

Concurrently attaching multiple network interfaces to a single instance can often result in corruption of the instance's information cache in Nova. The result is that some network interfaces may be missing from 'nova list', and silently fail to detach when 'nova interface-detach' is run. The ports are listed in 'nova interface-list', however, and can be seen in 'neutron port-list'.

Not related to MOS 8.0 and higher versions because the bug was fixed in Liberty and higher releases.

Tags: area-nova
Revision history for this message
Fuel Devops McRobotson (fuel-devops-robot) wrote : Related fix proposed to openstack/nova (openstack-ci/fuel-7.0/2015.1.0)

Related fix proposed to branch: openstack-ci/fuel-7.0/2015.1.0
Change author: Mark Goddard <email address hidden>
Review: https://review.fuel-infra.org/16691

Revision history for this message
Sergii Rizvan (srizvan) wrote :
Revision history for this message
Fuel Devops McRobotson (fuel-devops-robot) wrote : Fix merged to openstack/nova (openstack-ci/fuel-7.0/2015.1.0)

Reviewed: https://review.fuel-infra.org/12734
Submitter: Vitaly Sedelnik <email address hidden>
Branch: openstack-ci/fuel-7.0/2015.1.0

Commit: 6e97f7b778dd234e112682a874332c11456b5bf1
Author: Mark Goddard <email address hidden>
Date: Thu Feb 4 14:56:08 2016

Refresh instance info cache within lock

Fix interface attachment bug where multiple concurrent attachment
requests can cause corruption of the nova instance info cache. This
change refreshes the info cache object from the database whilst
holding the refresh-cache lock, ensuring that changes are
synchronised.

Change-Id: I6ea2eda8a61f418b0c32f13a7ed6904352712857
Closes-Bug: #1541838
Related-Bug: #1505124

Revision history for this message
Fuel Devops McRobotson (fuel-devops-robot) wrote : Fix merged to openstack/nova (openstack-ci/fuel-6.1/2014.2)

Reviewed: https://review.fuel-infra.org/12657
Submitter: Vitaly Sedelnik <email address hidden>
Branch: openstack-ci/fuel-6.1/2014.2

Commit: e4894aadcb2e10aae2fd780b5c2700fae0d04f8a
Author: Mark Goddard <email address hidden>
Date: Mon Feb 29 16:21:02 2016

Refresh instance info cache within lock

Fix interface attachment bug where multiple concurrent attachment
requests can cause corruption of the nova instance info cache. This
change refreshes the info cache object from the database whilst
holding the refresh-cache lock, ensuring that changes are
synchronised.

Conflicts:
 nova/network/base_api.py
 nova/network/neutronv2/api.py
 nova/tests/network/test_neutronv2.py

Closes-Bug: #1501430
Closes-Bug: #1541838

Change-Id: I6ea2eda8a61f418b0c32f13a7ed6904352712857

tags: added: on-verification
Revision history for this message
Ekaterina Shutova (eshutova) wrote :

Verified on 6.1 mu5.

Used scenario from upstream bug description.

tags: removed: on-verification
Revision history for this message
Sergii Rizvan (srizvan) wrote :

Fix for bug was reverted due to reducing 7.0-MU3 scope. It will be included in 7.0-MU4.

Revision history for this message
Fuel Devops McRobotson (fuel-devops-robot) wrote : Related fix merged to openstack/nova (openstack-ci/fuel-7.0/2015.1.0)

Reviewed: https://review.fuel-infra.org/19384
Submitter: Vitaly Sedelnik <email address hidden>
Branch: openstack-ci/fuel-7.0/2015.1.0

Commit: 91532a49fd4d240f6022b86d9e9ae63fd45731a2
Author: Sergii Rizvan <email address hidden>
Date: Mon Apr 11 13:38:24 2016

Revert "Refresh instance info cache within lock"

This reverts commit 6e97f7b778dd234e112682a874332c11456b5bf1.

Change-Id: I60dd9b0a5b73b5dcc8f20e8ce6374caacaa5aff9
Related-Bug: #1541838
Related-Bug: #1505124

Revision history for this message
Fuel Devops McRobotson (fuel-devops-robot) wrote :

Reviewed: https://review.fuel-infra.org/16691
Submitter: Vitaly Sedelnik <email address hidden>
Branch: openstack-ci/fuel-7.0/2015.1.0

Commit: 606daa93060d971e378e6cb55c2f43434bfe4ad2
Author: Mark Goddard <email address hidden>
Date: Mon Apr 25 13:08:27 2016

network: Don't repopulate instance info cache from Neutron ports

Allocation of network interfaces for an instance can result in
corruption of the instance info cache. The result is that the cache
may contain duplicate entries for network interfaces. This can cause
instance boot failure. This bug appears to be attributable to the
combined effects of the fixes for bugs #1467581 and #1407664.

This change reverts the fix for bug #1407664, whilst keeping a
modified version of the unit test that was added with it. It also
adds a second unit test.

Closes-bug: #1505124
Related-bug: #1541838
Change-Id: I53d5284907d44ae8b5546993f8fd461b385c39e6
(cherry picked from upstream commit 8694c1619d774bb8a6c23ed4c0f33df2084849bc)

Revision history for this message
Fuel Devops McRobotson (fuel-devops-robot) wrote : Fix proposed to openstack/nova (openstack-ci/fuel-7.0/2015.1.0)

Fix proposed to branch: openstack-ci/fuel-7.0/2015.1.0
Change author: Sergii Rizvan <email address hidden>
Review: https://review.fuel-infra.org/20750

tags: added: on-verification
Revision history for this message
Fuel Devops McRobotson (fuel-devops-robot) wrote : Fix merged to openstack/nova (openstack-ci/fuel-7.0/2015.1.0)

Reviewed: https://review.fuel-infra.org/20750
Submitter: Vitaly Sedelnik <email address hidden>
Branch: openstack-ci/fuel-7.0/2015.1.0

Commit: ad4c76814f5940a7abebbdc77cbcd6d1139d8ac6
Author: Sergii Rizvan <email address hidden>
Date: Tue May 17 13:05:59 2016

Revert "Revert "Refresh instance info cache within lock""

This reverts commit 91532a49fd4d240f6022b86d9e9ae63fd45731a2.

Change-Id: I3fab22a9fe140164b159716e2667522450ab71ab
Closes-Bug: #1541838
Related-Bug: #1505124

tags: removed: on-verification
Revision history for this message
Vladimir Jigulin (vjigulin) wrote :

Verified on 7.0+mu4

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.