The quota engine was still using oslo_db wrap_db_retry
which does not automatically take into account deadlocks
that occur inside of nested savepoint transactions.
In one case it didn't matter because it passed in the correct
exception checker but in the one that protected 'set_quota_usage'
it did not use is_retriable so a deadlock inside of the savepoint
would have resulted in a much more expensive retry all of the way
up at the API layer.
This patch just adjusts them to both use the standard neutron
retry_db_errors decorator.
Reviewed: https:/ /review. openstack. org/344013 /git.openstack. org/cgit/ openstack/ neutron/ commit/ ?id=c46edbc7d62 585b0181dfe4bb7 2c1be0620fc937
Committed: https:/
Submitter: Jenkins
Branch: master
commit c46edbc7d62585b 0181dfe4bb72c1b e0620fc937
Author: Kevin Benton <email address hidden>
Date: Mon Jul 18 22:39:19 2016 -0600
Use db_api. retry_db_ errors in quota engine
The quota engine was still using oslo_db wrap_db_retry
which does not automatically take into account deadlocks
that occur inside of nested savepoint transactions.
In one case it didn't matter because it passed in the correct
exception checker but in the one that protected 'set_quota_usage'
it did not use is_retriable so a deadlock inside of the savepoint
would have resulted in a much more expensive retry all of the way
up at the API layer.
This patch just adjusts them to both use the standard neutron
retry_db_errors decorator.
Change-Id: I1e45eb15f14bf3 5881e5b1dce7773 3e831e9c6b1
Related-Bug: #1596075