yahoo-eng-team team mailing list archive
-
yahoo-eng-team team
-
Mailing list archive
-
Message #10429
[Bug 1286969] [NEW] NeutronClientException exception isn't handled when showing a network
Public bug reported:
When I ran 'nova net xxx' to show a network's details, I got a 500 error if the network_uuid does not exist.
This is because the NeutronClientException exception is not caught by nova api.
$ nova net xxx
ERROR: The server has either erred or is incapable of performing the
requested operation. (HTTP 500) (Request-ID: req-e744c9ae-b8ad-4c39
-a77c-44e8bb05577c)
2014-03-01 02:37:25.764 ERROR nova.api.openstack [req-35d8246e-d414-4b62-b759-ab2c4bf86082 demo demo] Caught error:
404 Not Found
The resource could not be found.
2014-03-01 02:37:25.764 TRACE nova.api.openstack Traceback (most recent call last):
2014-03-01 02:37:25.764 TRACE nova.api.openstack File "/opt/stack/nova/nova/api/openstack/__init__.py", line 125,
in __call__
2014-03-01 02:37:25.764 TRACE nova.api.openstack return req.get_response(self.application)
2014-03-01 02:37:25.764 TRACE nova.api.openstack File "/usr/local/lib/python2.7/dist-packages/webob/request.py", l
ine 1296, in send
2014-03-01 02:37:25.764 TRACE nova.api.openstack application, catch_exc_info=False)
2014-03-01 02:37:25.764 TRACE nova.api.openstack File "/usr/local/lib/python2.7/dist-packages/webob/request.py", l
ine 1260, in call_application
2014-03-01 02:37:25.764 TRACE nova.api.openstack app_iter = application(self.environ, start_response)
2014-03-01 02:37:25.764 TRACE nova.api.openstack File "/usr/local/lib/python2.7/dist-packages/webob/dec.py", line
144, in __call__
2014-03-01 02:37:25.764 TRACE nova.api.openstack return resp(environ, start_response)
2014-03-01 02:37:25.764 TRACE nova.api.openstack File "/opt/stack/python-keystoneclient/keystoneclient/middleware/
auth_token.py", line 598, in __call__
2014-03-01 02:37:25.764 TRACE nova.api.openstack return self.app(env, start_response)
2014-03-01 02:37:25.764 TRACE nova.api.openstack File "/usr/local/lib/python2.7/dist-packages/webob/dec.py", line
144, in __call__
2014-03-01 02:37:25.764 TRACE nova.api.openstack return resp(environ, start_response)
2014-03-01 02:37:25.764 TRACE nova.api.openstack File "/usr/local/lib/python2.7/dist-packages/webob/dec.py", line
144, in __call__
2014-03-01 02:37:25.764 TRACE nova.api.openstack return resp(environ, start_response)
2014-03-01 02:37:25.764 TRACE nova.api.openstack File "/usr/local/lib/python2.7/dist-packages/webob/dec.py", line
130, in __call__
2014-03-01 02:37:25.764 TRACE nova.api.openstack resp = self.call_func(req, *args, **self.kwargs)
2014-03-01 02:37:25.764 TRACE nova.api.openstack File "/usr/local/lib/python2.7/dist-packages/webob/dec.py", line 195, in call_func
2014-03-01 02:37:25.764 TRACE nova.api.openstack return self.func(req, *args, **kwargs)
2014-03-01 02:37:25.764 TRACE nova.api.openstack File "/opt/stack/nova/nova/api/openstack/wsgi.py", line 929, in __call__
2014-03-01 02:37:25.764 TRACE nova.api.openstack content_type, body, accept)
2014-03-01 02:37:25.764 TRACE nova.api.openstack File "/opt/stack/nova/nova/api/openstack/wsgi.py", line 991, in _process_stack
2014-03-01 02:37:25.764 TRACE nova.api.openstack action_result = self.dispatch(meth, request, action_args)
2014-03-01 02:37:25.764 TRACE nova.api.openstack File "/opt/stack/nova/nova/api/openstack/wsgi.py", line 1078, in dispatch
2014-03-01 02:37:25.764 TRACE nova.api.openstack return method(req=request, **action_args)
2014-03-01 02:37:25.764 TRACE nova.api.openstack File "/opt/stack/nova/nova/api/openstack/compute/contrib/os_tenant_networks.py", line 108, in show
2014-03-01 02:37:25.764 TRACE nova.api.openstack network = self.network_api.get(context, id)
2014-03-01 02:37:25.764 TRACE nova.api.openstack File "/opt/stack/nova/nova/network/neutronv2/api.py", line 689, in get
2014-03-01 02:37:25.764 TRACE nova.api.openstack try:
2014-03-01 02:37:25.764 TRACE nova.api.openstack File "/opt/stack/python-neutronclient/neutronclient/v2_0/client.py", line 112, in with_params
2014-03-01 02:37:25.764 TRACE nova.api.openstack ret = self.function(instance, *args, **kwargs)
2014-03-01 02:37:25.764 TRACE nova.api.openstack File "/opt/stack/python-neutronclient/neutronclient/v2_0/client.py", line 339, in show_network
2014-03-01 02:37:25.764 TRACE nova.api.openstack return self.get(self.network_path % (network), params=_params)
2014-03-01 02:37:25.764 TRACE nova.api.openstack File "/opt/stack/python-neutronclient/neutronclient/v2_0/client.py", line 1237, in get
2014-03-01 02:37:25.764 TRACE nova.api.openstack print ("body: ", body)
2014-03-01 02:37:25.764 TRACE nova.api.openstack File "/opt/stack/python-neutronclient/neutronclient/v2_0/client.py", line 1222, in retry_request
2014-03-01 02:37:25.764 TRACE nova.api.openstack headers=headers, params=params)
2014-03-01 02:37:25.764 TRACE nova.api.openstack File "/opt/stack/python-neutronclient/neutronclient/v2_0/client.py", line 1165, in do_request
2014-03-01 02:37:25.764 TRACE nova.api.openstack self._handle_fault_response(status_code, replybody)
2014-03-01 02:37:25.764 TRACE nova.api.openstack File "/opt/stack/python-neutronclient/neutronclient/v2_0/client.py", line 1135, in _handle_fault_response
2014-03-01 02:37:25.764 TRACE nova.api.openstack exception_handler_v20(status_code, des_error_body)
2014-03-01 02:37:25.764 TRACE nova.api.openstack File "/opt/stack/python-neutronclient/neutronclient/v2_0/client.py", line 92, in exception_handler_v20
2014-03-01 02:37:25.764 TRACE nova.api.openstack message=message)
2014-03-01 02:37:25.764 TRACE nova.api.openstack NeutronClientException: 404 Not Found
2014-03-01 02:37:25.764 TRACE nova.api.openstack
2014-03-01 02:37:25.764 TRACE nova.api.openstack The resource could not be found.
** Affects: nova
Importance: Undecided
Assignee: Haiwei Xu (xu-haiwei)
Status: In Progress
** Changed in: nova
Assignee: (unassigned) => Haiwei Xu (xu-haiwei)
--
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to OpenStack Compute (nova).
https://bugs.launchpad.net/bugs/1286969
Title:
NeutronClientException exception isn't handled when showing a network
Status in OpenStack Compute (Nova):
In Progress
Bug description:
When I ran 'nova net xxx' to show a network's details, I got a 500 error if the network_uuid does not exist.
This is because the NeutronClientException exception is not caught by nova api.
$ nova net xxx
ERROR: The server has either erred or is incapable of performing the
requested operation. (HTTP 500) (Request-ID: req-e744c9ae-b8ad-4c39
-a77c-44e8bb05577c)
2014-03-01 02:37:25.764 ERROR nova.api.openstack [req-35d8246e-d414-4b62-b759-ab2c4bf86082 demo demo] Caught error:
404 Not Found
The resource could not be found.
2014-03-01 02:37:25.764 TRACE nova.api.openstack Traceback (most recent call last):
2014-03-01 02:37:25.764 TRACE nova.api.openstack File "/opt/stack/nova/nova/api/openstack/__init__.py", line 125,
in __call__
2014-03-01 02:37:25.764 TRACE nova.api.openstack return req.get_response(self.application)
2014-03-01 02:37:25.764 TRACE nova.api.openstack File "/usr/local/lib/python2.7/dist-packages/webob/request.py", l
ine 1296, in send
2014-03-01 02:37:25.764 TRACE nova.api.openstack application, catch_exc_info=False)
2014-03-01 02:37:25.764 TRACE nova.api.openstack File "/usr/local/lib/python2.7/dist-packages/webob/request.py", l
ine 1260, in call_application
2014-03-01 02:37:25.764 TRACE nova.api.openstack app_iter = application(self.environ, start_response)
2014-03-01 02:37:25.764 TRACE nova.api.openstack File "/usr/local/lib/python2.7/dist-packages/webob/dec.py", line
144, in __call__
2014-03-01 02:37:25.764 TRACE nova.api.openstack return resp(environ, start_response)
2014-03-01 02:37:25.764 TRACE nova.api.openstack File "/opt/stack/python-keystoneclient/keystoneclient/middleware/
auth_token.py", line 598, in __call__
2014-03-01 02:37:25.764 TRACE nova.api.openstack return self.app(env, start_response)
2014-03-01 02:37:25.764 TRACE nova.api.openstack File "/usr/local/lib/python2.7/dist-packages/webob/dec.py", line
144, in __call__
2014-03-01 02:37:25.764 TRACE nova.api.openstack return resp(environ, start_response)
2014-03-01 02:37:25.764 TRACE nova.api.openstack File "/usr/local/lib/python2.7/dist-packages/webob/dec.py", line
144, in __call__
2014-03-01 02:37:25.764 TRACE nova.api.openstack return resp(environ, start_response)
2014-03-01 02:37:25.764 TRACE nova.api.openstack File "/usr/local/lib/python2.7/dist-packages/webob/dec.py", line
130, in __call__
2014-03-01 02:37:25.764 TRACE nova.api.openstack resp = self.call_func(req, *args, **self.kwargs)
2014-03-01 02:37:25.764 TRACE nova.api.openstack File "/usr/local/lib/python2.7/dist-packages/webob/dec.py", line 195, in call_func
2014-03-01 02:37:25.764 TRACE nova.api.openstack return self.func(req, *args, **kwargs)
2014-03-01 02:37:25.764 TRACE nova.api.openstack File "/opt/stack/nova/nova/api/openstack/wsgi.py", line 929, in __call__
2014-03-01 02:37:25.764 TRACE nova.api.openstack content_type, body, accept)
2014-03-01 02:37:25.764 TRACE nova.api.openstack File "/opt/stack/nova/nova/api/openstack/wsgi.py", line 991, in _process_stack
2014-03-01 02:37:25.764 TRACE nova.api.openstack action_result = self.dispatch(meth, request, action_args)
2014-03-01 02:37:25.764 TRACE nova.api.openstack File "/opt/stack/nova/nova/api/openstack/wsgi.py", line 1078, in dispatch
2014-03-01 02:37:25.764 TRACE nova.api.openstack return method(req=request, **action_args)
2014-03-01 02:37:25.764 TRACE nova.api.openstack File "/opt/stack/nova/nova/api/openstack/compute/contrib/os_tenant_networks.py", line 108, in show
2014-03-01 02:37:25.764 TRACE nova.api.openstack network = self.network_api.get(context, id)
2014-03-01 02:37:25.764 TRACE nova.api.openstack File "/opt/stack/nova/nova/network/neutronv2/api.py", line 689, in get
2014-03-01 02:37:25.764 TRACE nova.api.openstack try:
2014-03-01 02:37:25.764 TRACE nova.api.openstack File "/opt/stack/python-neutronclient/neutronclient/v2_0/client.py", line 112, in with_params
2014-03-01 02:37:25.764 TRACE nova.api.openstack ret = self.function(instance, *args, **kwargs)
2014-03-01 02:37:25.764 TRACE nova.api.openstack File "/opt/stack/python-neutronclient/neutronclient/v2_0/client.py", line 339, in show_network
2014-03-01 02:37:25.764 TRACE nova.api.openstack return self.get(self.network_path % (network), params=_params)
2014-03-01 02:37:25.764 TRACE nova.api.openstack File "/opt/stack/python-neutronclient/neutronclient/v2_0/client.py", line 1237, in get
2014-03-01 02:37:25.764 TRACE nova.api.openstack print ("body: ", body)
2014-03-01 02:37:25.764 TRACE nova.api.openstack File "/opt/stack/python-neutronclient/neutronclient/v2_0/client.py", line 1222, in retry_request
2014-03-01 02:37:25.764 TRACE nova.api.openstack headers=headers, params=params)
2014-03-01 02:37:25.764 TRACE nova.api.openstack File "/opt/stack/python-neutronclient/neutronclient/v2_0/client.py", line 1165, in do_request
2014-03-01 02:37:25.764 TRACE nova.api.openstack self._handle_fault_response(status_code, replybody)
2014-03-01 02:37:25.764 TRACE nova.api.openstack File "/opt/stack/python-neutronclient/neutronclient/v2_0/client.py", line 1135, in _handle_fault_response
2014-03-01 02:37:25.764 TRACE nova.api.openstack exception_handler_v20(status_code, des_error_body)
2014-03-01 02:37:25.764 TRACE nova.api.openstack File "/opt/stack/python-neutronclient/neutronclient/v2_0/client.py", line 92, in exception_handler_v20
2014-03-01 02:37:25.764 TRACE nova.api.openstack message=message)
2014-03-01 02:37:25.764 TRACE nova.api.openstack NeutronClientException: 404 Not Found
2014-03-01 02:37:25.764 TRACE nova.api.openstack
2014-03-01 02:37:25.764 TRACE nova.api.openstack The resource could not be found.
To manage notifications about this bug go to:
https://bugs.launchpad.net/nova/+bug/1286969/+subscriptions
Follow ups
References