Skip to content

Commit c48f36d

Browse files
Zuulopenstack-gerrit
authored andcommitted
Merge "Retry set|get_link_attribute(s) if the interface is not present" into stable/2023.1
2 parents 0dfe8de + 1d2a1c6 commit c48f36d

File tree

1 file changed

+6
-1
lines changed

1 file changed

+6
-1
lines changed

neutron/privileged/agent/linux/ip_lib.py

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -400,6 +400,10 @@ def set_link_flags(device, namespace, flags):
400400
_run_iproute_link("set", device, namespace, flags=new_flags)
401401

402402

403+
@tenacity.retry(
404+
retry=tenacity.retry_if_exception_type(NetworkInterfaceNotFound),
405+
wait=tenacity.wait_exponential(multiplier=0.02, max=1),
406+
stop=tenacity.stop_after_delay(3), reraise=True)
403407
@privileged.link_cmd.entrypoint
404408
def set_link_attribute(device, namespace, **attributes):
405409
_run_iproute_link("set", device, namespace, **attributes)
@@ -430,7 +434,8 @@ def set_link_bridge_master(device, bridge, namespace=None):
430434

431435
@tenacity.retry(
432436
retry=tenacity.retry_if_exception_type(
433-
netlink_exceptions.NetlinkDumpInterrupted),
437+
(netlink_exceptions.NetlinkDumpInterrupted,
438+
NetworkInterfaceNotFound)),
434439
wait=tenacity.wait_exponential(multiplier=0.02, max=1),
435440
stop=tenacity.stop_after_delay(8),
436441
reraise=True)

0 commit comments

Comments
 (0)