From b0da2c4f4ed492f11c343852442e447073a5af76 Mon Sep 17 00:00:00 2001 From: Andrew Bogott Date: Thu, 12 Jul 2012 01:26:02 -0500 Subject: When over quota for floating ips, return HTTPRequestEntityTooLarge. Previously we were returning a generic Internal Server Error which seems dumb. Fixes bug 1021721. Change-Id: Ia30b8de22bcc00d159bb4894ab4dc5f4870c346b --- nova/api/openstack/compute/contrib/floating_ips.py | 2 +- nova/tests/api/openstack/compute/contrib/test_floating_ips.py | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/nova/api/openstack/compute/contrib/floating_ips.py b/nova/api/openstack/compute/contrib/floating_ips.py index ed5f61d53..df25e4fd2 100644 --- a/nova/api/openstack/compute/contrib/floating_ips.py +++ b/nova/api/openstack/compute/contrib/floating_ips.py @@ -174,7 +174,7 @@ class FloatingIPController(object): msg = _("No more floating ips in pool %s.") % pool else: msg = _("No more floating ips available.") - raise webob.exc.HTTPBadRequest(explanation=msg) + raise webob.exc.HTTPRequestEntityTooLarge(explanation=msg) return _translate_floating_ip_view(ip) diff --git a/nova/tests/api/openstack/compute/contrib/test_floating_ips.py b/nova/tests/api/openstack/compute/contrib/test_floating_ips.py index 6ce0daa05..e1a5593d3 100644 --- a/nova/tests/api/openstack/compute/contrib/test_floating_ips.py +++ b/nova/tests/api/openstack/compute/contrib/test_floating_ips.py @@ -228,7 +228,8 @@ class FloatingIpTest(test.TestCase): self.stubs.Set(rpc, "call", fake_call) req = fakes.HTTPRequest.blank('/v2/fake/os-floating-ips') - self.assertRaises(webob.exc.HTTPBadRequest, self.controller.create, + self.assertRaises(webob.exc.HTTPRequestEntityTooLarge, + self.controller.create, req) def test_floating_ip_allocate(self): -- cgit