Ironic: unplugging of instance VIFs fails if no VIFs associated with port
Bug #1292733 reported by
Adam Gandelman
This bug affects 2 people
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Ironic |
Invalid
|
Medium
|
Unassigned | ||
OpenStack Compute (nova) |
Fix Released
|
Low
|
Lucas Alvares Gomes |
Bug Description
During instance spawn, Ironic attempts to unplug any plugged VIFs from ports associated with an instance. If there are no associated VIFs to unplug, instance spawn fails with a nova-compute errror:
2014-03-14 21:15:35.907 16640 TRACE nova.openstack.
The driver should be only attempt to unplug VIFs from ports that actually have them associated.
Changed in ironic: | |
status: | New → Invalid |
Changed in ironic: | |
importance: | Undecided → Medium |
summary: |
- unplugging of instance VIFs fails if no VIFs associated with port + Ironic: unplugging of instance VIFs fails if no VIFs associated with + port |
Changed in nova: | |
status: | New → Confirmed |
importance: | Undecided → Low |
Changed in nova: | |
milestone: | none → kilo-1 |
status: | Fix Committed → Fix Released |
Changed in nova: | |
milestone: | kilo-1 → 2015.1.0 |
To post a comment you must log in.
2014-07-07 01:50:46.181 5764 TRACE nova.openstack. common. loopingcall BadRequest: Couldn't apply patch '[{'path': '/extra/ vif_port_ id', 'op': 'remove'}]'. Reason: can't remove non-existent object 'vif_port_id' (HTTP 400)
tada, just triggered this :)
2014-07-07 01:50:46.181 5764 ERROR nova.openstack. common. loopingcall [-] in fixed duration looping call common. loopingcall Traceback (most recent call last): common. loopingcall File "/opt/stack/ venvs/nova/ local/lib/ python2. 7/site- packages/ nova/openstack/ common/ loopingcall. py", line 76, in _inner common. loopingcall self.f(*self.args, **self.kw) common. loopingcall File "/opt/stack/ venvs/nova/ local/lib/ python2. 7/site- packages/ ironic/ nova/virt/ ironic/ driver. py", line 169, in _request_api common. loopingcall func(*args) common. loopingcall File "/opt/stack/ venvs/nova/ local/lib/ python2. 7/site- packages/ ironicclient/ v1/port. py", line 57, in update common. loopingcall return self._update( self._path( port_id) , patch) common. loopingcall File "/opt/stack/ venvs/nova/ local/lib/ python2. 7/site- packages/ ironicclient/ common/ base.py" , line 68, in _update common. loopingcall resp, body = self.api. json_request( method, url, body=body) common. loopingcall File "/opt/stack/ venvs/nova/ local/lib/ python2. 7/site- packages/ ironicclient/ common/ http.py" , line 186, in json_request common. loopingcall resp, body_iter = self._http_ request( url, method, **kwargs) common. loopingcall File "/opt/stack/ venvs/nova/ local/lib/ python2. 7/site- packages/ ironicclient/ common/ http.py" , line 169, in _http_request common. loopingcall error_json. get('debuginfo' ), method, url) common. loopingcall BadRequest: Couldn't apply patch '[{'path': '/extra/ vif_port_ id', 'op': 'remove'}]'. Reason: can't remove non-existent object 'vif_port_id' (HTTP 400) common. loopingcall
2014-07-07 01:50:46.181 5764 TRACE nova.openstack.
2014-07-07 01:50:46.181 5764 TRACE nova.openstack.
2014-07-07 01:50:46.181 5764 TRACE nova.openstack.
2014-07-07 01:50:46.181 5764 TRACE nova.openstack.
2014-07-07 01:50:46.181 5764 TRACE nova.openstack.
2014-07-07 01:50:46.181 5764 TRACE nova.openstack.
2014-07-07 01:50:46.181 5764 TRACE nova.openstack.
2014-07-07 01:50:46.181 5764 TRACE nova.openstack.
2014-07-07 01:50:46.181 5764 TRACE nova.openstack.
2014-07-07 01:50:46.181 5764 TRACE nova.openstack.
2014-07-07 01:50:46.181 5764 TRACE nova.openstack.
2014-07-07 01:50:46.181 5764 TRACE nova.openstack.
2014-07-07 01:50:46.181 5764 TRACE nova.openstack.
2014-07-07 01:50:46.181 5764 TRACE nova.openstack.
2014-07-07 01:50:46.181 5764 TRACE nova.openstack.