Skip to content

Reliable event delivery and recovery #332

Closed as duplicate
Closed as duplicate

Description

@elnafateh

SubscribeEvents currently uses an in-memory broadcast channel. Subscribers can miss events when disconnected or when they fall behind, and cannot resume from a cursor.

LDK Node persists its event queue and returns the same event until event_handled() is called. LDK Server can use this existing behavior to durably record API events before acknowledging them to LDK Node, then let subscribers replay recorded events after reconnecting.

Proposed behavior

  • Convert each LDK Node event into its API envelope and persist it in an ldk-server-owned event journal.
  • Acknowledge the event to LDK Node only after the journal write succeeds.
  • Assign stable event IDs and allow subscribers to resume from a cursor.
  • Define retention, duplicate handling, and behavior for slow subscribers.

Activity

  1. elnafateh commented on Nov 10, 2026

    @elnafateh
    ContributorAuthor

    @benthecarman I’d really appreciate your take on this, and how ldk-server should handle event redelivery after a crash.

  2. tnull commented on Nov 12, 2026

    @tnull
    Collaborator

    Closing as duplicate of #245.

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions