NetworkInfo object has no attribute wait

Bug #1675422 reported by Anton Rodionov
8
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Mirantis OpenStack
Fix Committed
High
MOS Nova
9.x
Fix Released
High
MOS Maintenance

Bug Description

One of our customers requests the following bug to be backported to Mitaka: https://bugs.launchpad.net/nova/+bug/1636109

They believe that it should resolve this issue:

2017-03-07T13:49:26.800772+01:00 cic-1 nova-conductor[6055]:
2017-03-07 13:49:26.800 6055 ERROR nova.scheduler.utils [req-0450b52a-76e9-4580-9028-1d8027b5d6ef 072bfdbbd59341e08fff42e011893aff bf89558491b143a6b2958fa8803f3c3c - - -] [instance: ee04e4ea-58d6-411d-98fb-c8b9f7c03f58]
Error from last host: compute-0-5.domain.tld (node compute-0-5.domain.tld):
[u'Traceback (most recent call last):\n', u'
File "/usr/lib/python2.7/dist-packages/nova/compute/manager.py", line 1943, in _do_build_and_run_instance\n filter_properties)\n', u'
File "/usr/lib/python2.7/dist-packages/nova/compute/manager.py", line 2133, in _build_and_run_instance\n instance_uuid=instance.uuid, reason=six.text_type(e))\n',
u"RescheduledException: Build of instance ee04e4ea-58d6-411d-98fb-c8b9f7c03f58 was re-scheduled: 'NetworkInfo' object has no attribute 'wait'\n"]

Revision history for this message
Alexander Rubtsov (arubtsov) wrote :

sla2 for 9.0-updates

Changed in mos:
importance: Undecided → High
assignee: nobody → MOS Nova (mos-nova)
milestone: none → 10.0
status: New → Confirmed
tags: added: area-nova
Revision history for this message
Roman Podoliaka (rpodolyaka) wrote :

The fix is present in the sync from stable/newton: https://review.fuel-infra.org/#/c/28324/

329cd16 Add a no-op wait method to NetworkInfo

Changed in mos:
status: Confirmed → Fix Committed
Revision history for this message
Fuel Devops McRobotson (fuel-devops-robot) wrote : Fix proposed to openstack/nova (9.0/mitaka)

Fix proposed to branch: 9.0/mitaka
Change author: Esha Seth <email address hidden>
Review: https://review.fuel-infra.org/32520

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

Reviewed: https://review.fuel-infra.org/32520
Submitter: Pkgs Jenkins <email address hidden>
Branch: 9.0/mitaka

Commit: 22ba609d8388c465f7ba44a1cdb5efa6f2a087e4
Author: Esha Seth <email address hidden>
Date: Fri Mar 24 16:30:24 2017

Add a no-op wait method to NetworkInfo

The normal deploy flow uses a NetworkInfoAsyncWrapper for network
allocation, and because of that many places have to call that class's
wait method to make sure it has completed. During a reschedule where
the network was allocated by a previous build attempt, a NetworkInfo
instance is retrieved instead, which does not have a wait method. This
then results in an exception complaining the missing method when it is
called. This fix addresses that by adding a no-op wait method to the
NetworkInfo class. Alternatively could have used isinstance or hasattr
to avoid making wait calls on NetworkInfo, but that could be
problematic to maintain as more places need to make wait calls in the
future and may not know to make the isinstance/hasattr check.

This fixes a regression issue caused by
61fc1b9ee11e416aecbf3a29e1d150a53fc890e8 ,
which reverted the previous fix made under
24a04c405ab2c98e52ea1edf8775489907526c6d

Closes-Bug: #1675422

(cherry picked from commit 329cd1649703ac801b95fce28afa99b67f9f45aa)
Change-Id: Id7a71b2eb46ea7df19e7da0afbc0eafa87cac965

tags: added: on-verification
Revision history for this message
Ilya Bumarskov (ibumarskov) wrote :

Can't reproduce this bug on our side. In accordance to our policy, I will move bug to "Fix released". Please check the fix on customer side.

tags: removed: on-verification
Revision history for this message
Fuel Devops McRobotson (fuel-devops-robot) wrote : Fix proposed to openstack/nova (mcp/1.0/mitaka)

Fix proposed to branch: mcp/1.0/mitaka
Change author: Esha Seth <email address hidden>
Review: https://review.fuel-infra.org/36360

Revision history for this message
Fuel Devops McRobotson (fuel-devops-robot) wrote : Change abandoned on openstack/nova (mcp/1.0/mitaka)

Change abandoned by Vladyslav Drok <email address hidden> on branch: mcp/1.0/mitaka
Review: https://review.fuel-infra.org/36360

Revision history for this message
Fuel Devops McRobotson (fuel-devops-robot) wrote : Change restored on openstack/nova (mcp/1.0/mitaka)

Change restored by Vladyslav Drok <email address hidden> on branch: mcp/1.0/mitaka
Review: https://review.fuel-infra.org/36360

Revision history for this message
Fuel Devops McRobotson (fuel-devops-robot) wrote : Fix merged to openstack/nova (mcp/1.0/mitaka)

Reviewed: https://review.fuel-infra.org/36360
Submitter: Pkgs Jenkins <email address hidden>
Branch: mcp/1.0/mitaka

Commit: 03b2e9ca430493ca9a4bd8b7118b7a25d3758cbe
Author: Esha Seth <email address hidden>
Date: Thu Aug 31 17:38:34 2017

Add a no-op wait method to NetworkInfo

The normal deploy flow uses a NetworkInfoAsyncWrapper for network
allocation, and because of that many places have to call that class's
wait method to make sure it has completed. During a reschedule where
the network was allocated by a previous build attempt, a NetworkInfo
instance is retrieved instead, which does not have a wait method. This
then results in an exception complaining the missing method when it is
called. This fix addresses that by adding a no-op wait method to the
NetworkInfo class. Alternatively could have used isinstance or hasattr
to avoid making wait calls on NetworkInfo, but that could be
problematic to maintain as more places need to make wait calls in the
future and may not know to make the isinstance/hasattr check.

This fixes a regression issue caused by
61fc1b9ee11e416aecbf3a29e1d150a53fc890e8 ,
which reverted the previous fix made under
24a04c405ab2c98e52ea1edf8775489907526c6d

Closes-Bug: #1675422

PROD ticket: https://mirantis.jira.com/browse/PROD-14345

(cherry picked from commit 329cd1649703ac801b95fce28afa99b67f9f45aa)
Change-Id: Id7a71b2eb46ea7df19e7da0afbc0eafa87cac965

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.