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

pay: Remove presplitter #6400

Merged
merged 3 commits into from
Jul 20, 2023

Commits on Jul 19, 2023

  1. pytest: Remove tests that rely on presplit behavior

    These tests make assumptions about the presplitter behavior which
    we'll remove in the next commit. We remove them here so we don't cause
    temporary breaks in the git history.
    cdecker committed Jul 19, 2023
    Configuration menu
    Copy the full SHA
    67e13f3 View commit details
    Browse the repository at this point in the history
  2. pay: Remove the presplitter modifier

    The presplitter modifier would split a payment before trying the first
    attempt based on some common sizes. Its goal was to have smaller parts
    in flight over different paths, in order to make it more difficult for
    a forwarding node to learn payment amount. However it was causing some
    issues for direct payments, and estimates on spendable amounts which
    considers only the first HTLC being added, but presplitter would
    always cause multiple HTLCs to be kicked off, causing the estimate to
    be off.
    
    Removing the presplitter fixes this, making draining channels easier,
    and worse success rates, due to more HTLCs in flight directly
    impacting the changes of getting stuck.
    
    Changelog-Removed: pay: `pay` no longer splits based on common size, as it was causing issues in various scenarios.
    cdecker committed Jul 19, 2023
    Configuration menu
    Copy the full SHA
    e7ae2d9 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    312d57c View commit details
    Browse the repository at this point in the history