-
Notifications
You must be signed in to change notification settings - Fork 906
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
Dropped funding transactions should be reattempted #3590
Comments
I like the
That's at the expense of two new RPC call each time we send a transaction (which we do pretty loosely, it really isnt necessary to prioritise all tx we pass to |
@darosior: Remember, not all bytes in a SegWit transaction count as a full virtual byte. If you add |
Yeah obviously :-) This was precised for the less obvious (to me?) absence of the |
Issue and Steps to Reproduce
C-Lightning creates a zombie channel that will remain in the
CHANNELD_AWAITING_LOCKIN
state indefinitely if BitcoinD rejected the initial attempt to broadcast the channel's funding transaction because the transaction paid a fee rate lower than BitcoinD'smempoolminfee
.maxmempool
.mempoolminfee
in the output ofbitcoin-cli getmempoolinfo
.lightning-cli fundchannel
with afeerate
less thanmempoolminfee
.CHANNELD_AWAITING_LOCKIN
state, where it will remain forever.Even though
mempoolminfee
may eventually decay below the funding transaction's fee rate, C-Lightning will never reattempt to broadcast the funding transaction.Attempted Workarounds
I have unsuccessfully tried several strategies to rebroadcast the dropped funding transactions:
lightning-cli disconnect
) doesn't work. They automatically reconnect, but C-Lightning does not resubmit their channels' funding transactions to BitcoinD.lightning-cli listtransactions
are unsigned and thus cannot be submitted tobitcoin-cli sendrawtransaction
.CHANNELD_AWAITING_LOCKIN
state?Possible Resolutions
mempoolminfee
. It must internally mark the funding transaction's inputs as spent so that it doesn't try to spend them elsewhere.sendrawtransaction
with a call toprioritisetransaction
so that BitcoinD will not drop the transaction from its mempool (and will broadcast it), even if its fee rate is lower thanmempoolminfee
.The text was updated successfully, but these errors were encountered: