Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

flaps: retry on certain failure modes, such as 504s #3601

Open
wants to merge 12 commits into
base: master
Choose a base branch
from

Commits on Jun 5, 2024

  1. machine: stub out Retry and RetryRet

    These functions allow retrying machine operations like machine creation, though there's no logic yet for determining which errors are *actually* transient, so behavior is still the same
    alichay committed Jun 5, 2024
    Configuration menu
    Copy the full SHA
    63540ad View commit details
    Browse the repository at this point in the history
  2. machine: local backoff state instead of global

    backoff modifies the Backoff state object while using it, so having one globally makes me uncomfortable
    alichay committed Jun 5, 2024
    Configuration menu
    Copy the full SHA
    2281f08 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    a44ac51 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    e0714e5 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    fb76c76 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    26189f7 View commit details
    Browse the repository at this point in the history
  7. machine: use Retry in most internal/machine functions

    except for ephemeral machines - i'm cooking up a different strategy to do this so this is more of a check-in than anything
    alichay committed Jun 5, 2024
    Configuration menu
    Copy the full SHA
    49e38ba View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    6b9ce0f View commit details
    Browse the repository at this point in the history
  9. Revert "machine: Retry now supports timeouts"

    This reverts commit fb76c76.
    alichay committed Jun 5, 2024
    Configuration menu
    Copy the full SHA
    8be65da View commit details
    Browse the repository at this point in the history
  10. Configuration menu
    Copy the full SHA
    033a418 View commit details
    Browse the repository at this point in the history
  11. flaps: wrap the Flaps client with a retryer

    Since Flaps has been abstracted to an Interface in flyctl, we can add a retry layer to it by just wrapping the existing client with *few* changes made elsewhere
    
    This is just a drop-in reliability improvement
    alichay committed Jun 5, 2024
    Configuration menu
    Copy the full SHA
    331f222 View commit details
    Browse the repository at this point in the history

Commits on Jun 6, 2024

  1. retryClient: restrict retry to GET and ops that should be idempotent

    Going to have to follow up to see whether all of these are safe to retry, but I feel like they *should* be?
    alichay committed Jun 6, 2024
    Configuration menu
    Copy the full SHA
    16db045 View commit details
    Browse the repository at this point in the history