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

Sync internal commits 2024-09-06 #75

Open
wants to merge 7 commits into
base: main
Choose a base branch
from

Commits on Aug 27, 2024

  1. Configuration menu
    Copy the full SHA
    152511f View commit details
    Browse the repository at this point in the history
  2. unset meta on cache miss

    If we have a cache miss, any meta in this object is invalid. Unset
    it so that we don't use it later.
    gumpt committed Aug 27, 2024
    Configuration menu
    Copy the full SHA
    5ce15b5 View commit details
    Browse the repository at this point in the history

Commits on Sep 3, 2024

  1. Replace non-breaking space with regular space

    Includes-commit: 0560e0f
    Replicated-from: cloudflare#356
    l2dy authored and eaufavor committed Sep 3, 2024
    Configuration menu
    Copy the full SHA
    96f90d7 View commit details
    Browse the repository at this point in the history
  2. docs: fix doc comment for request_summary

    Co-authored-by: Derek Argueta <[email protected]>
    eaufavor and derekargueta committed Sep 3, 2024
    Configuration menu
    Copy the full SHA
    4e813b1 View commit details
    Browse the repository at this point in the history
  3. Fix Opt::parse_args doc typo

    Includes-commit: 9a934bc
    Replicated-from: cloudflare#360
    allan2 authored and eaufavor committed Sep 3, 2024
    Configuration menu
    Copy the full SHA
    afa6f5a View commit details
    Browse the repository at this point in the history
  4. disable caching during error handling

    This has the effect of reducing a warning log since we are not
    leaving the lock dangling for the next reader.
    gumpt committed Sep 3, 2024
    Configuration menu
    Copy the full SHA
    58c0da7 View commit details
    Browse the repository at this point in the history

Commits on Sep 5, 2024

  1. change lock status memory ordering, tag spans

    This changes the memory ordering for the lock status load to `SeqCst` from
    `Relaxed` to eliminate a potential source of panics.
    
    Panics had the frames:
    ```
    pingora_proxy::proxy_cache::<T>::handle_lock_status (proxy_cache.rs:748)
    pingora_proxy::proxy_cache::<T>::proxy_cache::{{closure}} (proxy_cache.rs:211)
    pingora_proxy::HttpProxy<T>::process_request::{{closure}} (lib.rs:509)
    pingora_proxy::HttpProxy<T>::process_new_http::{{closure}} (lib.rs:727)
    ```
    
    which showed we were checking on the status of the lock, after waiting on it,
    and still seeing its status as waiting. The status is returned by value, so this
    is not a time-of-check to time-of-use problem, this is an inconsistency in how
    the lock status is managed. The change in memory order is mostly for the sake of
    this programmer's attempts to understand what is happening.
    
    This also completes a couple of TODOs to limit the wait period as well as tag
    the span with the lock status.
    gumpt committed Sep 5, 2024
    Configuration menu
    Copy the full SHA
    1e0e0bc View commit details
    Browse the repository at this point in the history