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

Support cancellation during client connection establishment #721

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

Commits on Apr 5, 2024

  1. Support cancellation during client connection establishment

    With #714 we added support for cancelling in-flight HTTP requests by putting the response deferred
    into an error state. However, this only worked once the underlying TCP connection was
    established. With this patch, it is now possible to cancel requests even while the connection is
    still being established (possible since Netty 4.1.108.Final via
    netty/netty#13849). This also works for `aleph.tcp/client`.
    DerGuteMoritz committed Apr 5, 2024
    Configuration menu
    Copy the full SHA
    9a66ceb View commit details
    Browse the repository at this point in the history

Commits on Apr 11, 2024

  1. Configuration menu
    Copy the full SHA
    8e1edd9 View commit details
    Browse the repository at this point in the history

Commits on Apr 18, 2024

  1. Configuration menu
    Copy the full SHA
    ad58861 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    568847c View commit details
    Browse the repository at this point in the history

Commits on Apr 19, 2024

  1. Introduce utils for making error propagation more self-describing

    The new namespace `aleph.util` introduces two new helpers:
    
    * `on-error` which is like `d/on-realized` but only for the error case (success case uses
      `identity`).
    * `propagate-error` which propagates error states from a source deferred to a destination deferred
      and optinally accepts a callback which is only run when the propagation has indeed occurred.
    
    These are now used in all places where we propagate error states back to upstream deferreds for the
    purpose of cancellation which hopefully makes it a bit more obvious what's going on.
    DerGuteMoritz committed Apr 19, 2024
    Configuration menu
    Copy the full SHA
    d14b846 View commit details
    Browse the repository at this point in the history
  2. Fix test-in-flight-request-cancellation test

    See code comment for background
    DerGuteMoritz committed Apr 19, 2024
    Configuration menu
    Copy the full SHA
    d2233c6 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    ef28e80 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    11e9eef View commit details
    Browse the repository at this point in the history