-
Notifications
You must be signed in to change notification settings - Fork 2.1k
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
[bug]: sweep transaction not recognized by on-chain wallet #7181
Comments
i guess some sweep happend
but when i do
|
sorry nevermind, the missing transaction actually isn't in my bitcoind node mempool for some reason |
but it did make it out to mempool.space, blockstream, etc. |
lnd doesn't look at the mempool for any spends/confirmations. It only watches on chain, since that always gives us a single source of truth to target against (vs trying to target something in the mempool that might have no ever). In the future mempool policy may only get more murky as well. Once things are confirmed, then the wallet will remove any UTXOs created from that invalidated anchor sweep.
Also if it never got to you, then there's no way lnd would see it. There's no global mempool view, which is why we wait for things to be confirmed before acting on them (some special cases apply). |
lnd should always know about unconfirmed spends that it created though? sorry my original descriptions were confusing as i was still trying to figure out what happened |
Yeah it should, but if the transaction it went to broadcast was actually invalid (the input was spent), then that would be resolved by the sweeper eventually trying a different input set to ensure things are swept properly. I'm not sure what the original issue was tracking though. Does your on chain data (txns/utxos, etc) look correct now? |
the transaction the lnd sweeper broadcasted was valid, it was this tx everything resolved once but things were in a weird state in the several hours while that tx was hanging around in my mempool: the lnd wallet had not updated its list of unspents, so one of the inputs to that transaction was still showing up in |
unfortunately i don't know how i can reproduce this and i don't think i have any more valuable information, but perhaps this could be an explanation: maybe somehow the call timed out when LND was trying to broadcast the original automatic sweep transaction |
I think I may be experiencing something like this, and LND keeps creating sweeps of the same invalid anchor UTXO that has already been mined. The problem is that it keeps locking up my valid UTXOs trying to sweep this, until it shows I have no UTXO to spend. I have both of these in my listchaintxns...
and are both being sent by my node, but Basically, I can't open more channels as LND goes into a state where my entire on-chain balanced is eventually marked as unconfirmed in a bunch of these bad sweeps. LND 0.15.4-beta |
Background
LND performed some type of sweep on an anchor output, but this tx was not registered in the lnd on-chain wallet, so the input it used to fund the sweep still appears unspent, but it is spent by a tx in my mempool
note i'm running a larger than normal mempool
Your environment
lnd
latestuname -a
on *Nix) ubuntubtcd
,bitcoind
, or other backend bitcoindThe text was updated successfully, but these errors were encountered: