yahoo-eng-team team mailing list archive
-
yahoo-eng-team team
-
Mailing list archive
-
Message #54854
[Bug 1609184] Re: ML2: Allow retry on db error by precommit
Reviewed: https://review.openstack.org/350315
Committed: https://git.openstack.org/cgit/openstack/neutron/commit/?id=7e69891412e967a8509fe6877501114e148f7518
Submitter: Jenkins
Branch: master
commit 7e69891412e967a8509fe6877501114e148f7518
Author: Isaku Yamahata <isaku.yamahata@xxxxxxxxx>
Date: Tue Aug 2 15:51:18 2016 -0700
ml2: allow retry on retriabable db error by precommit
Db retriable error by precommit can be recovered with upper layer by
retry instead of converting into ML2MechanismDriverError.
Raise retriable db error instead of swallowing it and let upper layer to
retry.
Due to concurrency, db error by precommit is sometimes inevitable.
precommit may issue db transactions depending on mechanism driver, Some
operations on e.g. subnet, routers, touches many other resources (e.g. ip
allocation, ports) in single db transaction as well. And background
operation by mechanism driver (e.g. background sync, monitoring
resources periodically, etc) may touch those db tables with other
order.
Change-Id: Ifc670c1eb5801934bf46fdc23a7721ce4c2cfa6c
Closes-Bug: #1609184
Closes-Bug: #1609149
** 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/1609184
Title:
ML2: Allow retry on db error by precommit
Status in neutron:
Fix Released
Bug description:
Allow retry on db retriable error by precommit mothod.
Currently ML2 driver manager swallows all exceptions by mechanism driver and return errors to user.
However, there are classes of retriable db errors(DBDeadlock, taleDataError, DDuplicateEntry, TretryRequest).
With those error by precommit, it's better to allow neutron.api.v2.base.Controller to retry request.
Sometimes, those db error by precommit is inevitable. Especially
subnet operation touches many resources(port, ip address, etc).
To manage notifications about this bug go to:
https://bugs.launchpad.net/neutron/+bug/1609184/+subscriptions
References