Skip to content

Wrap send_pay in awaitable channel futures #522

Closed

Description

@JssDWt

It would be great if send_pay could be wrapped in awaitable channel futures, just like pay and trampoline_pay. The Breez SDK uses send_pay to pay for reverse swaps. They sometimes fail with failed: WIRE_TEMPORARY_CHANNEL_FAILURE (First peer not ready), meaning the channels between greenlight and the LSP are not yet reestablished at the moment of calling send_pay.

Activity

  1. cdecker commented on Oct 16, 2024

    @cdecker
    Collaborator

    We have this patch pending deployment, but are fighting with the CI to get them deployed. I'll update here once the patches are deployed.

  2. cdecker commented on Nov 13, 2024

    @cdecker
    Collaborator

    This patch has been deployed last week 👍

  3. cdecker commented on Oct 26, 2026

    @cdecker
    Collaborator

    Follow-up pointer: the awaiting behavior implemented here later became a failure mode of its own — payments would block awaiting all channels, including abandoned/unfunded JIT opens that can never reappear. That was fixed by #759 (merged as 1d721b7c), which introduced a single channel-availability rule: unavailable channels are skipped for sends and invoices, and awaited channels fail fast when they will not come back.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions