yahoo-eng-team team mailing list archive
-
yahoo-eng-team team
-
Mailing list archive
-
Message #52412
[Bug 1590602] Re: duplicate mac detection is brittle
Reviewed: https://review.openstack.org/327413
Committed: https://git.openstack.org/cgit/openstack/neutron/commit/?id=db9e4048c4d134629d59f11ff004cbb8513e2b18
Submitter: Jenkins
Branch: master
commit db9e4048c4d134629d59f11ff004cbb8513e2b18
Author: Kevin Benton <kevin@xxxxxxxxxx>
Date: Wed Jun 8 05:53:28 2016 -0700
Remove MAC duplicate detection for generated macs
The previous MAC duplicate detection code relied on catching a
DBDuplicateError the correct time which resulted in two problems.
First, the duplicate could have been caused by something else being
flushed to the database at the same time.
Second, the DBDuplicate may not occur at flush time if the conflict
happens due to two concurrent port creations and it will instead
happen at commit time.
This patch just dumps the DBDuplicate catch to allow the API layer
to retry the operation since MAC collisions on a network should be
extremely rare.
Closes-Bug: #1590602
Change-Id: Idf816c07198be3ce745252ac9aa9c4aad8f11910
** 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/1590602
Title:
duplicate mac detection is brittle
Status in neutron:
Fix Released
Bug description:
The duplicate mac detection logic is based on catching DBDuplicate
exceptions at a very specific time. This results in incorrect
classification if other things are waiting to be flushed which results
in weird workarounds like
(https://review.openstack.org/#/c/292207/23/neutron/db/db_base_plugin_common.py).
It also creates different behavior if the duplicate isn't realized
until certification at COMMIT, at which point the retry decorator will
restart the operation.
To manage notifications about this bug go to:
https://bugs.launchpad.net/neutron/+bug/1590602/+subscriptions
References