sweep: remove conflicted sweep txns from the rebroadcaster

In this commit, we an existing gap in our rebroadcast handling logic. As
is, if we're trying to sweep a transaction and a conflicting transaction
is mined (timeout lands on chain, anchor swept), then we'll continue to
try to rebroadcast the tx in the background.

To resolve this, we give the sweeper a new closure function that it can
use to mark conflicted transactions as no longer requiring rebroadcast.
This commit is contained in:
Olaoluwa Osuntokun committed 2023-04-21 11:53:08 -07:00
1 parent d908becf73
commit 3d2daeefd8
7 files changed
+49 -2

No files matched your search

+1 -1
View File
@@ -1056,7 +1056,7 @@ func newServer(cfg *Config, listenAddrs []net.Addr,
FeeEstimator: cc.FeeEstimator,
GenSweepScript: newSweepPkScriptGen(cc.Wallet),
Signer: cc.Wallet.Cfg.Signer,
Wallet: cc.Wallet,
Wallet: newSweeperWallet(cc.Wallet),
NewBatchTimer: func() <-chan time.Time {
return time.NewTimer(cfg.Sweeper.BatchWindowDuration).C
},