Skip to content
This repository has been archived by the owner on Apr 19, 2024. It is now read-only.

MegaFix global behavior bugs. #225

Merged
merged 24 commits into from
Mar 19, 2024
Merged

MegaFix global behavior bugs. #225

merged 24 commits into from
Mar 19, 2024

Commits on Feb 26, 2024

  1. Fix global behavior ResetTime bug.

    Every call to `GetRateLimits` would reset the `ResetTime` and not the `Remaining` counter.  This would cause counters to eventually deplete and never fully reset.
    Baliedge committed Feb 26, 2024
    Configuration menu
    Copy the full SHA
    f02cb5b View commit details
    Browse the repository at this point in the history

Commits on Feb 28, 2024

  1. Refine request time propagation.

    Request time is resolved at first call to `getLocalRateLimit()`, then is propagated across peer-to-peer for global behavior.
    Baliedge committed Feb 28, 2024
    Configuration menu
    Copy the full SHA
    a665c3c View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    427dd2b View commit details
    Browse the repository at this point in the history

Commits on Mar 6, 2024

  1. Fix race condition in global behavior.

    QueueUpdate() allowed for sending request/response when local ratelimits are updated.  However, the order they get called to QueueUpdate() is not guaranteed to be chronological.  This causes stale updates to propagate, causing lost hits.
    Instead, QueueUpdate() will only pass the request.  The current ratelimit state will be retrieved immediately before propagation.
    
    Rigorous functional tests added around global behavior.
    Baliedge committed Mar 6, 2024
    Configuration menu
    Copy the full SHA
    57a5c97 View commit details
    Browse the repository at this point in the history

Commits on Mar 7, 2024

  1. Fix compile error.

    Baliedge committed Mar 7, 2024
    Configuration menu
    Copy the full SHA
    56a0b22 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    cb3816a View commit details
    Browse the repository at this point in the history

Commits on Mar 11, 2024

  1. Refactor global behavior and functional tests for stability.

    - Simplify passing of request time across layers.
    - Better handling of metrics in tests.
    - Better detection of global broadcasts, global updates, and idle.
    - Drop redundant metric `guberator_global_broadcast_counter`.
    - Fix metric `gubernator_global_queue_length` for global broadcast.
    - Add metric `gubernator_global_send_queue_length` for global send.
    Baliedge committed Mar 11, 2024
    Configuration menu
    Copy the full SHA
    e2b8853 View commit details
    Browse the repository at this point in the history
  2. Fix lint errors.

    Baliedge committed Mar 11, 2024
    Configuration menu
    Copy the full SHA
    7c67a32 View commit details
    Browse the repository at this point in the history
  3. Tidy code.

    Baliedge committed Mar 11, 2024
    Configuration menu
    Copy the full SHA
    24bee89 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    ea42442 View commit details
    Browse the repository at this point in the history
  5. Fix tests.

    Baliedge committed Mar 11, 2024
    Configuration menu
    Copy the full SHA
    bd38ee6 View commit details
    Browse the repository at this point in the history
  6. Fix benchmark test errors.

    Baliedge committed Mar 11, 2024
    Configuration menu
    Copy the full SHA
    65ee4fa View commit details
    Browse the repository at this point in the history
  7. Fix TestHealthCheck.

    Baliedge committed Mar 11, 2024
    Configuration menu
    Copy the full SHA
    d5c74d2 View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    cd7bbab View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    0fb2a33 View commit details
    Browse the repository at this point in the history
  10. Fix compile error.

    Baliedge committed Mar 11, 2024
    Configuration menu
    Copy the full SHA
    47eede5 View commit details
    Browse the repository at this point in the history
  11. Fix test.

    Baliedge committed Mar 11, 2024
    Configuration menu
    Copy the full SHA
    2229596 View commit details
    Browse the repository at this point in the history
  12. Configuration menu
    Copy the full SHA
    c0608d5 View commit details
    Browse the repository at this point in the history
  13. Metric gubernator_getratelimit_counter adds calltype value "local n…

    …on-owner"
    
    Better tracks the code path.
    Can exclude non-owner activity.
    Can get accurate total rate limit checks with query like `rate(gubernator_getratelimit_counter{calltype="local"}[1m])`
    Baliedge committed Mar 11, 2024
    Configuration menu
    Copy the full SHA
    517bf63 View commit details
    Browse the repository at this point in the history
  14. Configuration menu
    Copy the full SHA
    5f137ad View commit details
    Browse the repository at this point in the history

Commits on Mar 12, 2024

  1. Don't call OnChange() event from non-owner.

    Non-owners shouldn't be persisting rate limit state.
    Baliedge committed Mar 12, 2024
    Configuration menu
    Copy the full SHA
    f51861d View commit details
    Browse the repository at this point in the history

Commits on Mar 13, 2024

  1. Configuration menu
    Copy the full SHA
    d55016d View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    5ce3bc1 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    0b2adf6 View commit details
    Browse the repository at this point in the history