Comment 12 for bug 2036952

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to octavia (stable/xena)

Reviewed: https://review.opendev.org/c/openstack/octavia/+/897780
Committed: https://opendev.org/openstack/octavia/commit/c8a2cb4fbdbf357129bf52c98fbe2d8517dd557c
Submitter: "Zuul (22348)"
Branch: stable/xena

commit c8a2cb4fbdbf357129bf52c98fbe2d8517dd557c
Author: Gregory Thiemonge <email address hidden>
Date: Mon Sep 25 07:48:01 2023 -0400

    Retry to set loadbalancer prov status on failures

    In case of DB outages when a flow is running, an exception is caught and
    the flow is reverted. In most of the flows, the revert function of the
    first task's (the last to be reverted) unlocks the load balancer by
    setting its provisioning status (to ERROR or ACTIVE, depending on the
    flow), but it fails if the DB is not reachable, leaving the LB in
    a PENDING_* state.
    This commit adds tenacity.retry to those functions, Octavia retries to
    set the status during ~2h45 (2000 attempts, 1 sec initial delay, 5 sec
    max delay).

    Note: stable/2023.1 and older, the patch also includes modifications for
    v1/tasks/lifecycle_tasks.py

    Conflicts:
            octavia/common/config.py
            octavia/tests/unit/controller/worker/test_task_utils.py
            octavia/controller/worker/v1/tasks/lifecycle_tasks.py

    Closes-Bug: #2036952
    Change-Id: I458dd6d6f5383edc24116ea0fa27e3a593044146
    (cherry picked from commit be91493332786365b8e997fcf88779a12d1ae130)
    (cherry picked from commit 96782e2c543bfb488c7629e9ba2cf009b2a6b033)
    (cherry picked from commit 57833dbdad964f8a7861a0ab1d2847159f483577)
    (cherry picked from commit 27060603db697c64dd9d3a30910d67fed7b5906e)
    (cherry picked from commit 5a411a68558b8e81552678d79b876e7143025f80)