Stop timing out payments automatically, requiring abandon_payment
authorMatt Corallo <git@bluematt.me>
Sat, 8 Oct 2022 19:54:43 +0000 (19:54 +0000)
committerMatt Corallo <git@bluematt.me>
Wed, 2 Nov 2022 01:09:07 +0000 (01:09 +0000)
commit548f3f841660b5da81e6cf46573d400a9fcbf3ea
tree9df3ba26ec560476ddee0e461ade3162d6dc16d4
parent166e0c88e46565d5f65fac83fbb606bbb3414fc3
Stop timing out payments automatically, requiring abandon_payment

When the `abandon_payment` flow was added there was some concern
that upgrading users may not migrate to the new flow, causing
memory leaks in the pending-payment tracking.

While this is true, now that we're relying on the
pending_outbound_payments map for `send_payment` idempotency, the
risk of removing a payment prematurely goes up from "spurious
retry failure" to "sending a duplicative payment", which is much
worse.

Thus, we simply remove the automated payment timeout here,
explicitly requiring that users call `abandon_payment` when they
give up retrying a payment.
lightning/src/ln/channelmanager.rs
lightning/src/ln/functional_tests.rs
lightning/src/util/events.rs