Recoverer/claim broadcasting race causes permanent duplicate payment in local instance #725
Open
1 of 2 tasks
Labels
Milestone
The issue occurs as follows:
track_new_blocks
loop iteration starts, and does a full scan of the liquid onchain wallettrack_new_blocks
iteration continues and tries to recover data from the swap. 2 txs are found in the lockup script history, both pending (due to 0-conf), but neither are known local wallet txs (wallet is out of date), so we see the log:Found unconfirmed lockup and refund txs while recovering data for Receive Swap Jusa6EMuaCRd
. End result is that the swap gets both its lockup and claim tx id cleared.transaction.mempool
(see Network issues can cause same swap to be subscribed to multiple times #704). Given the claim tx id was erased, we proceed with broadcasting a new claim txpayment_tx_data
table. There is no implemented mechanism to clean this table, causing a permanent pending payment to appear in the payments list.We should:
payment_tx_data
table as part of the recovery - Clean payment txs data on sync #731The text was updated successfully, but these errors were encountered: