Hey everyone, I could use some help here. I've got a load of coins that have been stuck since April '23... They landed in my Bitcoin Core wallet with fees set at just 1 sat/vb. The transactions aren’t signaling RBF, so I can’t boost the fees using the GUI in Core. Is there any way to fix this issue, ideally without having to use the command line? Appreciate any advice.
I think you can do that by just enabling the unconfirmed change on the settings but I don't know if it will work on the output that came from other wallets.
However, in case if it does not work you can generate a PSBT transaction from Electrum just import the BTC address from your Bitcoin core wallet to Electrum and then make a transaction there and send it to any address or send it to the same address(Your BTC address) once you created a transaction save it into .PSBT and sign it to your Bitcoin core wallet and broadcast the transaction.
I never done this before but I think this will work.
Importing your private keys into Electrum wallet
[TUTORIAL]getting a low-fee transaction unstuck by creating a CPFP with electrum
Two guides to do that, first import your private key from Bitcoin Core wallet to Electrum wallet, then use Child Pay For Parents with Electrum wallet.
Even with opt-in RBF flag, you still wont have the authority to use "Increase transaction fee" menu to those transactions since you're the receiver.
Your option is to CPFP that the wallet part of Bitcoin Core can't do directly.
You'll need to use commands and precise computation of amounts and fee: en.bitcoin.it/wiki/Fee_bumping#I_received_the_stuck_transaction
Or do BitMaxz's suggestion to import the address(es) to Electrum to create a CPFP unsigned transaction, export the PSBT file/string via "Share" button.
Import it to Bitcoin Core via "File->Load PSBT from..." menu, sign and broadcast it.
You can also ask the sender to replace those once dropped from his mempool. (if he's using the default size and there too many transactions in it)
He can do this if he's using Bitcoin Core: the moment their status turn "0/unconfirmed, not in memory pool", right-click on the transaction and select "Abandon Transaction".
His overall balance should update accordingly. Then 'Enable coin control features' in "Settings->Options", 'Wallet' tab.
In the 'Send' tab, click "Inputs..." select the inputs of the abandoned transactions and send with higher transaction fee.
(this is for the sender, not the receiver)
But it's better if you can share the transaction IDs because these suggestions may not be enough in some cases, like of long chain of large 1sat/vB transactions.
That doesn't work: Bitcoin Core doesn't allow to send unconfirmed incoming coins in the GUI. But as far as I know it's possible from the command line. The only time I needed to use CPFP from Bitcoin Core, I exported the private key, imported it into Electrum, and made the transaction. But, in this case, since it's been a year, that transaction won't show up in Electrum.
The 1 year old 1 sat/vbyte transaction won't show up in Electrum.
Handling private keys directly could be very risky, fortunately it was possible to resolve this without touching them. Thanks for the resources anyway!
I pointed Electrum to my node which has a non-default mempool, so it's not purging anything at the moment. It almost certainly wouldn't have shown them to me otherwise. Even if for example on mempool.space these transactions appear only a few weeks or months old, so who knows
Give me a clear possibility of this scenario.
When you made that reply, the purging limit was around 6.21 sat/vbytes and as I'm writing, the purge limit is 4.04sat/vbyte, supposed I have a transaction on the mempool with 3.9 sats/vbytes, does this transaction get purge immediately if the purge limit goes << 3.9 sats/vbytes or it takes two weeks before it drops mempool.
Another question: What if I have my transaction broadcasted by wallet that periodically rebroadcast the same transaction of 3.9 sats/vbytes, will mempool.space node accept my transaction or they reject it instantly because of the purge condition?
At default settings, that transaction should be dropped immediately. But every node can use their own mempool settings. That's how mempool.space knows there's a total of "1.10 GB / 300 MB" mempool data.
I think mempool.space keeps them all. But being accepted in a certain mempool doesn't mean anything: you need a miner to include the transaction into a block.
You can broadcast your transaction as often you want. The question is: do your node's peers drop it immediately because it's below their purge limit? Will your transaction ever reach mempool.space's node(s)? You could be lucky that some of your peers have a large mempool with a very low purge limit and maybe your peer's peers are in the same camp. There's a statistical chance that your transaction may be seen by mempool.space. I wouldn't count on it, unless you verified.
I haven't heard of any publicly known Bitcoin node addresses of mempool.space (they publish their Lightning node addresses).