We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
There was an error while loading. Please reload this page.
1 parent 9c0174f commit 0bee5c6Copy full SHA for 0bee5c6
supervisor/addons/addon.py
@@ -1562,7 +1562,15 @@ async def _restart_after_problem(self, state: ContainerState):
1562
)
1563
break
1564
1565
- await asyncio.sleep(WATCHDOG_RETRY_SECONDS)
+ # Exponential backoff to spread retries over the throttle window
1566
+ delay = WATCHDOG_RETRY_SECONDS * (1 << max(attempts - 1, 0))
1567
+ _LOGGER.debug(
1568
+ "Watchdog will retry addon %s in %s seconds (attempt %s)",
1569
+ self.name,
1570
+ delay,
1571
+ attempts + 1,
1572
+ )
1573
+ await asyncio.sleep(delay)
1574
1575
async def container_state_changed(self, event: DockerContainerStateEvent) -> None:
1576
"""Set addon state from container state."""
0 commit comments