neutron/neutron/services/trunk
Slawek Kaplonski 7a8b59624c Add retries to update trunk port
In [1] retry of trunk update was added to avoid StaleDataError
exceptions to fail to set trunk port or subports to ACTIVE state.
But it was only partial fix for the issue descibed in related bug
and from [2] we know that it still can happen on high load systems
from time to time.
So I was checking this issue and reported bug again and I found out
that retry was added only in _process_trunk_subport_bindings()
method. But StaleDataError can be raised also in other cases where
the same trunk is updated, e.g. in update_trunk_status() method.

So this commit adds same retry mechanism to all trunk.update() actions
in services.trunk.rpc.server module.

[1] https://review.opendev.org/#/c/662236/
[2] https://bugzilla.redhat.com/show_bug.cgi?id=1733197

Conflicts:
    neutron/services/trunk/rpc/server.py

Change-Id: I10e3619d5f3600ea97ed695321bb691dece3181f
Partial-Bug: #1828375
(cherry picked from commit ade35a233e)
2020-01-14 09:15:35 +01:00
..
drivers Fix pep8 E128 warnings in non-test code 2019-03-12 21:22:33 +00:00
rpc Add retries to update trunk port 2020-01-14 09:15:35 +01:00
seg_types use plugin common utils from neutron-lib 2018-04-17 12:06:28 -06:00
__init__.py Revisit support for trunk segmentation types 2016-09-02 15:37:09 +00:00
callbacks.py use callback payloads for PRECOMMIT_UPDATE events 2018-03-13 11:38:19 -06:00
constants.py Inherit segmentation details for trunk subports if requested 2017-04-03 21:22:38 -07:00
exceptions.py Merge "Check MTU sanity of trunk port subports" 2016-09-05 16:36:27 +00:00
models.py Tag mechanism supports resources with standard attribute 2017-07-25 08:14:04 +09:00
plugin.py remove the neutron.db._resource_extend module 2019-01-02 13:02:06 -07:00
rules.py use payloads for PORT BEFORE_DELETE callbacks 2019-01-30 11:30:40 -07:00
utils.py use is_extension_supported from neutron-lib 2018-03-12 09:28:52 -06:00