← Back to team overview

yahoo-eng-team team mailing list archive

[Bug 1277368] [NEW] incorrect 'quota exceeded' error from neutron v2 api when subnet is out of addresses

 

Public bug reported:

This code:
        except neutron_client_exc.NeutronClientException as e:
            LOG.exception(_('Neutron error creating port on network %s') %
                          network_id, instance=instance)
            # NOTE(mriedem): OverQuota in neutron is a 409
            if e.status_code == 409:
                raise exception.PortLimitExceeded()
            raise

in _create_port in the neutronv2/api.py source file is incorrect.

It claims that 409 from Neutron implies OverQuota but in fact it is more
general that that.

Because we don't include the exception text in the error, users cannot
debug the problem and have to ask sysadmins to look at logs.

Neutron actually signals this:
2014-02-07 06:30:04,447.447 11046 TRACE nova.network.neutronv2.api [instance: 94c56776-2680-429d-b7d6-4e8846dfe832]     raise ex
2014-02-07 06:30:04,447.447 11046 TRACE nova.network.neutronv2.api [instance: 94c56776-2680-429d-b7d6-4e8846dfe832] IpAddressGenerationFailureClient: No more IP addresses available on network e85b44c7-1136-4217-954e-cdf0acdddfe1.

in it's error.

** Affects: nova
     Importance: Medium
         Status: Triaged


** Tags: neutron

** Changed in: nova
       Status: New => Triaged

** Changed in: nova
   Importance: Undecided => Medium

-- 
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/1277368

Title:
  incorrect 'quota exceeded' error from neutron v2 api when subnet is
  out of addresses

Status in OpenStack Compute (Nova):
  Triaged

Bug description:
  This code:
          except neutron_client_exc.NeutronClientException as e:
              LOG.exception(_('Neutron error creating port on network %s') %
                            network_id, instance=instance)
              # NOTE(mriedem): OverQuota in neutron is a 409
              if e.status_code == 409:
                  raise exception.PortLimitExceeded()
              raise

  in _create_port in the neutronv2/api.py source file is incorrect.

  It claims that 409 from Neutron implies OverQuota but in fact it is
  more general that that.

  Because we don't include the exception text in the error, users cannot
  debug the problem and have to ask sysadmins to look at logs.

  Neutron actually signals this:
  2014-02-07 06:30:04,447.447 11046 TRACE nova.network.neutronv2.api [instance: 94c56776-2680-429d-b7d6-4e8846dfe832]     raise ex
  2014-02-07 06:30:04,447.447 11046 TRACE nova.network.neutronv2.api [instance: 94c56776-2680-429d-b7d6-4e8846dfe832] IpAddressGenerationFailureClient: No more IP addresses available on network e85b44c7-1136-4217-954e-cdf0acdddfe1.

  in it's error.

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


Follow ups

References