** Changed in: nova Status: Fix Committed => Fix Released ** Changed in: nova Milestone: None => liberty-3
-- 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/1482816 Title: Nova should not return a 500 on floating ip create with ipv6 Status in OpenStack Compute (nova): Fix Released Bug description: Neutron does not support creating or using floating ips on an ipv6 network. When nova gets a create floating ip call and does the passthrough call to neutron it will get a 400 response from neutron saying there is not ipv4 subnet available. This goes unhandled by nova and will cause a 500 response. Since this is an expected error, nova should catch it and return a 400 to the user for the same reason. For example logs with the unhandled exception see: http://logs.openstack.org/47/210647/2/check/gate-tempest-dsvm-neutron- full/ea565de/logs/screen-n-api.txt.gz?level=TRACE 2015-08-08 01:55:33.923 20521 ERROR nova.api.openstack Traceback (most recent call last): 2015-08-08 01:55:33.923 20521 ERROR nova.api.openstack File "/opt/stack/new/nova/nova/api/openstack/__init__.py", line 128, in __call__ 2015-08-08 01:55:33.923 20521 ERROR nova.api.openstack return req.get_response(self.application) 2015-08-08 01:55:33.923 20521 ERROR nova.api.openstack File "/usr/local/lib/python2.7/dist-packages/webob/request.py", line 1317, in send 2015-08-08 01:55:33.923 20521 ERROR nova.api.openstack application, catch_exc_info=False) 2015-08-08 01:55:33.923 20521 ERROR nova.api.openstack File "/usr/local/lib/python2.7/dist-packages/webob/request.py", line 1281, in call_application 2015-08-08 01:55:33.923 20521 ERROR nova.api.openstack app_iter = application(self.environ, start_response) 2015-08-08 01:55:33.923 20521 ERROR nova.api.openstack File "/usr/local/lib/python2.7/dist-packages/webob/dec.py", line 144, in __call__ 2015-08-08 01:55:33.923 20521 ERROR nova.api.openstack return resp(environ, start_response) 2015-08-08 01:55:33.923 20521 ERROR nova.api.openstack File "/usr/local/lib/python2.7/dist-packages/webob/dec.py", line 130, in __call__ 2015-08-08 01:55:33.923 20521 ERROR nova.api.openstack resp = self.call_func(req, *args, **self.kwargs) 2015-08-08 01:55:33.923 20521 ERROR nova.api.openstack File "/usr/local/lib/python2.7/dist-packages/webob/dec.py", line 195, in call_func 2015-08-08 01:55:33.923 20521 ERROR nova.api.openstack return self.func(req, *args, **kwargs) 2015-08-08 01:55:33.923 20521 ERROR nova.api.openstack File "/usr/local/lib/python2.7/dist-packages/keystonemiddleware/auth_token/__init__.py", line 434, in __call__ 2015-08-08 01:55:33.923 20521 ERROR nova.api.openstack response = req.get_response(self._app) 2015-08-08 01:55:33.923 20521 ERROR nova.api.openstack File "/usr/local/lib/python2.7/dist-packages/webob/request.py", line 1317, in send 2015-08-08 01:55:33.923 20521 ERROR nova.api.openstack application, catch_exc_info=False) 2015-08-08 01:55:33.923 20521 ERROR nova.api.openstack File "/usr/local/lib/python2.7/dist-packages/webob/request.py", line 1281, in call_application 2015-08-08 01:55:33.923 20521 ERROR nova.api.openstack app_iter = application(self.environ, start_response) 2015-08-08 01:55:33.923 20521 ERROR nova.api.openstack File "/usr/local/lib/python2.7/dist-packages/webob/dec.py", line 144, in __call__ 2015-08-08 01:55:33.923 20521 ERROR nova.api.openstack return resp(environ, start_response) 2015-08-08 01:55:33.923 20521 ERROR nova.api.openstack File "/usr/local/lib/python2.7/dist-packages/webob/dec.py", line 144, in __call__ 2015-08-08 01:55:33.923 20521 ERROR nova.api.openstack return resp(environ, start_response) 2015-08-08 01:55:33.923 20521 ERROR nova.api.openstack File "/usr/local/lib/python2.7/dist-packages/routes/middleware.py", line 136, in __call__ 2015-08-08 01:55:33.923 20521 ERROR nova.api.openstack response = self.app(environ, start_response) 2015-08-08 01:55:33.923 20521 ERROR nova.api.openstack File "/usr/local/lib/python2.7/dist-packages/webob/dec.py", line 144, in __call__ 2015-08-08 01:55:33.923 20521 ERROR nova.api.openstack return resp(environ, start_response) 2015-08-08 01:55:33.923 20521 ERROR nova.api.openstack File "/usr/local/lib/python2.7/dist-packages/webob/dec.py", line 130, in __call__ 2015-08-08 01:55:33.923 20521 ERROR nova.api.openstack resp = self.call_func(req, *args, **self.kwargs) 2015-08-08 01:55:33.923 20521 ERROR nova.api.openstack File "/usr/local/lib/python2.7/dist-packages/webob/dec.py", line 195, in call_func 2015-08-08 01:55:33.923 20521 ERROR nova.api.openstack return self.func(req, *args, **kwargs) 2015-08-08 01:55:33.923 20521 ERROR nova.api.openstack File "/opt/stack/new/nova/nova/api/openstack/wsgi.py", line 756, in __call__ 2015-08-08 01:55:33.923 20521 ERROR nova.api.openstack content_type, body, accept) 2015-08-08 01:55:33.923 20521 ERROR nova.api.openstack File "/opt/stack/new/nova/nova/api/openstack/wsgi.py", line 821, in _process_stack 2015-08-08 01:55:33.923 20521 ERROR nova.api.openstack action_result = self.dispatch(meth, request, action_args) 2015-08-08 01:55:33.923 20521 ERROR nova.api.openstack File "/opt/stack/new/nova/nova/api/openstack/wsgi.py", line 911, in dispatch 2015-08-08 01:55:33.923 20521 ERROR nova.api.openstack return method(req=request, **action_args) 2015-08-08 01:55:33.923 20521 ERROR nova.api.openstack File "/opt/stack/new/nova/nova/api/openstack/compute/contrib/floating_ips.py", line 115, in create 2015-08-08 01:55:33.923 20521 ERROR nova.api.openstack address = self.network_api.allocate_floating_ip(context, pool) 2015-08-08 01:55:33.923 20521 ERROR nova.api.openstack File "/opt/stack/new/nova/nova/network/neutronv2/api.py", line 1392, in allocate_floating_ip 2015-08-08 01:55:33.923 20521 ERROR nova.api.openstack fip = client.create_floatingip(param) 2015-08-08 01:55:33.923 20521 ERROR nova.api.openstack File "/usr/local/lib/python2.7/dist-packages/neutronclient/v2_0/client.py", line 102, in with_params 2015-08-08 01:55:33.923 20521 ERROR nova.api.openstack ret = self.function(instance, *args, **kwargs) 2015-08-08 01:55:33.923 20521 ERROR nova.api.openstack File "/usr/local/lib/python2.7/dist-packages/neutronclient/v2_0/client.py", line 701, in create_floatingip 2015-08-08 01:55:33.923 20521 ERROR nova.api.openstack return self.post(self.floatingips_path, body=body) 2015-08-08 01:55:33.923 20521 ERROR nova.api.openstack File "/usr/local/lib/python2.7/dist-packages/neutronclient/v2_0/client.py", line 298, in post 2015-08-08 01:55:33.923 20521 ERROR nova.api.openstack headers=headers, params=params) 2015-08-08 01:55:33.923 20521 ERROR nova.api.openstack File "/usr/local/lib/python2.7/dist-packages/neutronclient/v2_0/client.py", line 211, in do_request 2015-08-08 01:55:33.923 20521 ERROR nova.api.openstack self._handle_fault_response(status_code, replybody) 2015-08-08 01:55:33.923 20521 ERROR nova.api.openstack File "/usr/local/lib/python2.7/dist-packages/neutronclient/v2_0/client.py", line 185, in _handle_fault_response 2015-08-08 01:55:33.923 20521 ERROR nova.api.openstack exception_handler_v20(status_code, des_error_body) 2015-08-08 01:55:33.923 20521 ERROR nova.api.openstack File "/usr/local/lib/python2.7/dist-packages/neutronclient/v2_0/client.py", line 70, in exception_handler_v20 2015-08-08 01:55:33.923 20521 ERROR nova.api.openstack status_code=status_code) 2015-08-08 01:55:33.923 20521 ERROR nova.api.openstack BadRequest: Bad floatingip request: Network c8f0e88f-ae41-47cb-be6c-d8256ba80576 does not contain any IPv4 subnet 2015-08-08 01:55:33.923 20521 ERROR nova.api.openstack To manage notifications about this bug go to: https://bugs.launchpad.net/nova/+bug/1482816/+subscriptions -- Mailing list: https://launchpad.net/~yahoo-eng-team Post to : yahoo-eng-team@lists.launchpad.net Unsubscribe : https://launchpad.net/~yahoo-eng-team More help : https://help.launchpad.net/ListHelp