yahoo-eng-team team mailing list archive
-
yahoo-eng-team team
-
Mailing list archive
-
Message #37686
[Bug 1482816] Re: Nova should not return a 500 on floating ip create with ipv6
** 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
References