Reviewed:  https://review.openstack.org/253267
Committed: 
https://git.openstack.org/cgit/openstack/python-neutronclient/commit/?id=af1a55bfd2e47b0e3cd8349f0a9b1277474fee18
Submitter: Jenkins
Branch:    master

commit af1a55bfd2e47b0e3cd8349f0a9b1277474fee18
Author: Akihiro Motoki <[email protected]>
Date:   Fri Dec 4 01:53:58 2015 +0900

    Ensure to use exception per status code for all cases
    
    Previously, only when an exception has a content with
    {'NeutronError': {'type': xxxx, 'message': xxxx}},
    exception per status code is raised from neutronclient library.
    There are cases where this kind of message is not contained
    in exception messages, for example, some extension is loaded.
    
    Library users expect an exception is raised based on response
    status code and it should not depend on an exception message.
    This commit applies a fallback logic to map generic per-status
    exception to all exception types from the neutron server.
    
    Closes-Bug: #1513879
    Change-Id: Ib3d0a8359aed444b12217b3404d40443d61fc2c0


** Changed in: python-neutronclient
       Status: In Progress => Fix Released

-- 
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to neutron.
https://bugs.launchpad.net/bugs/1513879

Title:
  NeutronClientException: 404 Not Found

Status in neutron:
  Confirmed
Status in OpenStack Compute (nova):
  Fix Released
Status in python-neutronclient:
  Fix Released
Status in tripleo:
  Triaged

Bug description:
  Tripleo isn't currently working with trunk nova, the undercloud is
  failing to build overcloud instances, nova compute is showing this
  exception


  Nov 05 13:10:45 instack.localdomain nova-compute[21338]: 2015-11-05
  13:10:45.163 21338 ERROR nova.virt.ironic.driver [req-7df4cae6-f00a-
  41a2-91e0-db1e6f130059 a800cb834fbd4a70915e2272dce924ac
  102a2b78e079410f9afd8b8b46278c19 - - -] Error preparing deploy for
  instance 9ae5b605-58e3-40ee-b944-56cbf5806e51 on baremetal node
  f5c30846-4ada-444e-85d9-6e3be2a74782.

  
  Nov 05 13:10:45 instack.localdomain nova-compute[21338]: 2015-11-05 
13:10:45.434 21338 DEBUG nova.virt.ironic.driver 
[req-7df4cae6-f00a-41a2-91e0-db1e6f130059 a800cb834fbd4a70915e2272dce924ac 
102a2b78e079410f9afd8b8b46278c19 - - -] unplug: 
instance_uuid=9ae5b605-58e3-40ee-b944-56cbf5806e51 vif=[] _unplug_vifs 
/usr/lib/python2.7/site-packages/nova/virt/ironic/driver.py:1093
   Instance failed to spawn
   Traceback (most recent call last):
     File "/usr/lib/python2.7/site-packages/nova/compute/manager.py", line 
2165, in _build_resources
       yield resources
     File "/usr/lib/python2.7/site-packages/nova/compute/manager.py", line 
2012, in _build_and_run_instance
       block_device_info=block_device_info)
     File "/usr/lib/python2.7/site-packages/nova/virt/ironic/driver.py", line 
791, in spawn
       flavor=flavor)
     File "/usr/lib/python2.7/site-packages/oslo_utils/excutils.py", line 197, 
in __exit__
       six.reraise(self.type_, self.value, self.tb)
     File "/usr/lib/python2.7/site-packages/nova/virt/ironic/driver.py", line 
782, in spawn
       self._plug_vifs(node, instance, network_info)
     File "/usr/lib/python2.7/site-packages/nova/virt/ironic/driver.py", line 
1058, in _plug_vifs
       network_info_str = str(network_info)
     File "/usr/lib/python2.7/site-packages/nova/network/model.py", line 515, 
in __str__
       return self._sync_wrapper(fn, *args, **kwargs)
     File "/usr/lib/python2.7/site-packages/nova/network/model.py", line 498, 
in _sync_wrapper
       self.wait()
     File "/usr/lib/python2.7/site-packages/nova/network/model.py", line 530, 
in wait
       self[:] = self._gt.wait()
     File "/usr/lib/python2.7/site-packages/eventlet/greenthread.py", line 175, 
in wait
       return self._exit_event.wait()
     File "/usr/lib/python2.7/site-packages/eventlet/event.py", line 125, in 
wait
       current.throw(*self._exc)
     File "/usr/lib/python2.7/site-packages/eventlet/greenthread.py", line 214, 
in main
       result = function(*args, **kwargs)
     File "/usr/lib/python2.7/site-packages/nova/utils.py", line 1178, in 
context_wrapper
       return func(*args, **kwargs)
     File "/usr/lib/python2.7/site-packages/nova/compute/manager.py", line 
1574, in _allocate_network_async
       six.reraise(*exc_info)
     File "/usr/lib/python2.7/site-packages/nova/compute/manager.py", line 
1557, in _allocate_network_async
       dhcp_options=dhcp_options)
     File "/usr/lib/python2.7/site-packages/nova/network/neutronv2/api.py", 
line 733, in allocate_for_instance
       update_cells=True)
     File "/usr/lib/python2.7/site-packages/nova/network/base_api.py", line 
244, in get_instance_nw_info
       result = self._get_instance_nw_info(context, instance, **kwargs)
     File "/usr/lib/python2.7/site-packages/nova/network/neutronv2/api.py", 
line 930, in _get_instance_nw_info
       preexisting_port_ids)
     File "/usr/lib/python2.7/site-packages/nova/network/neutronv2/api.py", 
line 1708, in _build_network_info_model
       current_neutron_port)
     File "/usr/lib/python2.7/site-packages/nova/network/neutronv2/api.py", 
line 1560, in _nw_info_get_ips
       client, fixed_ip['ip_address'], port['id'])
     File "/usr/lib/python2.7/site-packages/nova/network/neutronv2/api.py", 
line 1491, in _get_floating_ips_by_fixed_and_port
       port_id=port)
     File "/usr/lib/python2.7/site-packages/nova/network/neutronv2/api.py", 
line 1475, in _safe_get_floating_ips
       for k, v in six.iteritems(kwargs)]))
     File "/usr/lib/python2.7/site-packages/oslo_utils/excutils.py", line 197, 
in __exit__
       six.reraise(self.type_, self.value, self.tb)
     File "/usr/lib/python2.7/site-packages/nova/network/neutronv2/api.py", 
line 1466, in _safe_get_floating_ips
       return client.list_floatingips(**kwargs)['floatingips']
     File "/usr/lib/python2.7/site-packages/neutronclient/v2_0/client.py", line 
102, in with_params
       ret = self.function(instance, *args, **kwargs)
     File "/usr/lib/python2.7/site-packages/neutronclient/v2_0/client.py", line 
734, in list_floatingips
       **_params)
     File "/usr/lib/python2.7/site-packages/neutronclient/v2_0/client.py", line 
307, in list
       for r in self._pagination(collection, path, **params):
     File "/usr/lib/python2.7/site-packages/neutronclient/v2_0/client.py", line 
320, in _pagination
       res = self.get(path, params=params)
     File "/usr/lib/python2.7/site-packages/neutronclient/v2_0/client.py", line 
293, in get
       headers=headers, params=params)
     File "/usr/lib/python2.7/site-packages/neutronclient/v2_0/client.py", line 
270, in retry_request
       headers=headers, params=params)
     File "/usr/lib/python2.7/site-packages/neutronclient/v2_0/client.py", line 
211, in do_request
       self._handle_fault_response(status_code, replybody)
     File "/usr/lib/python2.7/site-packages/neutronclient/v2_0/client.py", line 
185, in _handle_fault_response
       exception_handler_v20(status_code, des_error_body)
     File "/usr/lib/python2.7/site-packages/neutronclient/v2_0/client.py", line 
83, in exception_handler_v20
       message=message)
   NeutronClientException: 404 Not Found

   The resource could not be found.

To manage notifications about this bug go to:
https://bugs.launchpad.net/neutron/+bug/1513879/+subscriptions

-- 
Mailing list: https://launchpad.net/~yahoo-eng-team
Post to     : [email protected]
Unsubscribe : https://launchpad.net/~yahoo-eng-team
More help   : https://help.launchpad.net/ListHelp

Reply via email to