Reviewed: https://review.openstack.org/469669 Committed: https://git.openstack.org/cgit/openstack/neutron/commit/?id=802cf1194218dc125b7211d9c48df8cfebd4f932 Submitter: Jenkins Branch: master
commit 802cf1194218dc125b7211d9c48df8cfebd4f932 Author: Miguel Lavalle <[email protected]> Date: Wed May 31 16:38:57 2017 -0500 Fix race between create subnet and port requests When creating an IPv6 auto-address subnet for a network, ports can be created or updated concurrently in the same network, before the subnet creation concludes. In such a situation, an IpAddressAlreadyAllocated exception may be raised, because the subnet create request attempts to allocate auto addresses to the concurrently created or updated ports, which have been already allocated by the port requests. This patchset adds code to the IPAM to skip the attempt to assign the auto address to ports if they already have received them. Change-Id: If1eb4046865f43b15ba97c52e2d0b9343dc72c19 Closes-Bug: #1655567 ** Changed in: neutron Status: In Progress => Fix Released -- You received this bug notification because you are a member of Yahoo! Engineering Team, which is subscribed to neutron. https://bugs.launchpad.net/bugs/1655567 Title: DHCPv6 failures with "address already allocated in subnet" error Status in neutron: Fix Released Bug description: Test failures with the DHCPv6 error from multiple test methods. Use query: http://logstash.openstack.org/#dashboard/file/logstash.json?query=message%3A%5C%22already%20allocated%20in%20subnet%5C%22 An example: ============================== 2017-01-11 05:00:04.479808 | Failed 1 tests - output below: 2017-01-11 05:00:04.479858 | ============================== 2017-01-11 05:00:04.479883 | 2017-01-11 05:00:04.479962 | tempest.api.network.test_dhcp_ipv6.NetworksTestDHCPv6.test_dhcpv6_stateless_eui64[id-e5517e62-6f16-430d-a672-f80875493d4c] 2017-01-11 05:00:04.480056 | -------------------------------------------------------------------------------------------------------------------------- 2017-01-11 05:00:04.480082 | 2017-01-11 05:00:04.480113 | Captured traceback: 2017-01-11 05:00:04.480154 | ~~~~~~~~~~~~~~~~~~~ 2017-01-11 05:00:04.480204 | Traceback (most recent call last): 2017-01-11 05:00:04.480283 | File "tempest/api/network/test_dhcp_ipv6.py", line 109, in test_dhcpv6_stateless_eui64 2017-01-11 05:00:04.480415 | real_ip, eui_ip = self._get_ips_from_subnet(**kwargs) 2017-01-11 05:00:04.480486 | File "tempest/api/network/test_dhcp_ipv6.py", line 90, in _get_ips_from_subnet 2017-01-11 05:00:04.480551 | subnet = self.create_subnet(self.network, **kwargs) 2017-01-11 05:00:04.480607 | File "tempest/api/network/base.py", line 179, in create_subnet 2017-01-11 05:00:04.481118 | **kwargs) 2017-01-11 05:00:04.481198 | File "tempest/lib/services/network/subnets_client.py", line 27, in create_subnet 2017-01-11 05:00:04.481260 | return self.create_resource(uri, post_data) 2017-01-11 05:00:04.481756 | File "tempest/lib/services/network/base.py", line 60, in create_resource 2017-01-11 05:00:04.481830 | resp, body = self.post(req_uri, req_post_data) 2017-01-11 05:00:04.481887 | File "tempest/lib/common/rest_client.py", line 276, in post 2017-01-11 05:00:04.481946 | return self.request('POST', url, extra_headers, headers, body, chunked) 2017-01-11 05:00:04.482000 | File "tempest/lib/common/rest_client.py", line 664, in request 2017-01-11 05:00:04.482042 | self._error_checker(resp, resp_body) 2017-01-11 05:00:04.482098 | File "tempest/lib/common/rest_client.py", line 776, in _error_checker 2017-01-11 05:00:04.482145 | raise exceptions.Conflict(resp_body, resp=resp) 2017-01-11 05:00:04.482204 | tempest.lib.exceptions.Conflict: An object with that identifier already exists 2017-01-11 05:00:04.482325 | Details: {u'detail': u'', u'message': u'IP address 2003::f816:3eff:fe18:34ee already allocated in subnet 181627ba-b8ff-49c2-b97d-21763a0b572c', u'type': u'IpAddressAlreadyAllocated'} To manage notifications about this bug go to: https://bugs.launchpad.net/neutron/+bug/1655567/+subscriptions -- Mailing list: https://launchpad.net/~yahoo-eng-team Post to : [email protected] Unsubscribe : https://launchpad.net/~yahoo-eng-team More help : https://help.launchpad.net/ListHelp

