Author

Topic: [Mycelium Android] Transaction stuck for ~2 weeks, can't bump the fee (Read 162 times)

legendary
Activity: 2394
Merit: 5531
Self-proclaimed Genius
Or you could just delete an unconfirmed transaction from Mycelium, so it won't get rebroadcasted anymore.
Unfortunately, the unconfirmed transaction is in their server's mempool (and other nodes).
Deleting the unconfirmed transaction from the wallet will just "locally" delete it from your wallet and not in the rest of the Bitcoin nodes that still keep your txn.

And for an some reason, Mycelium's server's keeps everything (valid) in their mempool, it must have a huge maxmempool size and very long mempoolexpiry settings.

Check this guy who broadcaster a transaction 3months ago that never fully dropped from the network (now confirmed);
Link: /index.php?topic=5474461.msg63648534#msg63648534

Can someone explain why do the mempools have to keep those unconfirmed transactions for so long? It's not usefull for anyone who's transaction is stuck.
Those are probably wallet, exchange or blockexplorer nodes.
It may be a way for them to minimize complaints of missing unconfirmed transactions of their clients since it'll be more troublesome than the few who want to get their transaction dropped.
There are workarounds to "unstuck" transaction anyways, so they must be balancing the decision from worse to worst case scenario.
legendary
Activity: 1512
Merit: 4795
Or you could just delete an unconfirmed transaction from Mycelium, so it won't get rebroadcasted anymore.
If you continue to open your wallet, the wallet will synchronized with the blockchain again and likely the server the wallet depends on will continue to rebroadcast the transaction. If your transaction is stuck, it is better not to open the wallet, or making sure the wallet do not synchronize with the blockchain. With this, if you import your seed phrase or private key on Electrum, with time, a server or some servers will drop the transaction from their mempool so that you can rebroadcast the coin again in another transaction. I have seen people that used Coinomi, Mycelium and Trustwallet that import the seed phrase on Electrum and were later able to rebroadcast their coin again.
legendary
Activity: 2408
Merit: 1555
I think if you don't open your wallet, mycelium will no longer rebroadcast your transaction.
Or you could just delete an unconfirmed transaction from Mycelium, so it won't get rebroadcasted anymore.


As for me, I took the advice I got in this thread and started using Electrum wallet with RBF feature It's really good and helps you not stress out about transactions getting stuck.
legendary
Activity: 2380
Merit: 5213
Can someone explain why do the mempools have to keep those unconfirmed transactions for so long?
Nodes don't have to keep transactions in their mempool. Each node can have its own settings. There are many nodes that use default settings and drop unconfirmed transactions from their mempool after 14 days.

Also why does mycelium force rebroadcast when the right solution is not to rebroadcast (or at least let the user choose)
That's how it has been designed.
I think if you don't open your wallet, mycelium will no longer rebroadcast your transaction.
newbie
Activity: 25
Merit: 0
Can someone explain why do the mempools have to keep those unconfirmed transactions for so long? It's not usefull for anyone who's transaction is stuck. Also why does mycelium force rebroadcast when the right solution is not to rebroadcast (or at least let the user choose)
legendary
Activity: 2408
Merit: 1555
What I have noticed is that all wallets that I know that do not support RBF only broadcast non-RBF transactions. The reason we should avoid them. But you can read about full RBF too which can make that possible in the future if most node runners and wallets support it.

Looks like you're right. I imported the wallet to Electrum but can't use the RBF feature, as it wasn't supported by Mycelium where the tx was created:



So I guess waiting for it to be dropped from the mempool is now my only option.

But if you dont want to wait CPFP is your last hope to speed up this transaction ask the receiver to do this if he is using Electrum.
It's not possible to do CPFP.
According to transaction history of the receiving address, it probably belongs to a custodial service like an exchange.

Correct. I was sending to exchange and I can't use the CPFP on Mycelium (as mentioned in the first post) as I'm getting this error:
"Transaction has no utxo to form a child transaction or utxo has already been spent".


legendary
Activity: 2380
Merit: 5213
But if you dont want to wait CPFP is your last hope to speed up this transaction ask the receiver to do this if he is using Electrum.
It's not possible to do CPFP.
According to transaction history of the receiving address, it probably belongs to a custodial service like an exchange.
legendary
Activity: 1512
Merit: 4795
Mycelium has a bump fee option even without opt-in RBF and yes they do not have RBF yet it was propose on some developer 6 years ago but until now they do not have this flag.
However, the only option they added for stuck transaction in/outgoing is CPFP(as Bump fee).
The pump fee we meant is RBF, not CPFP. All wallets that can spend unconfirmed transactions support CPFP. Also as a sender, if your unconfirmed transaction has change address UTXO, you can spend it or part of it which is also CPFP.  CPFP makes the fee higher.
legendary
Activity: 3234
Merit: 2943
Block halving is coming.
If a transaction has been flagged as RBF, you can bump the fee. Bumping the fee means that you replace an unconfirmed transaction with a new one paying higher fee without any need to wait for the tranaction to be dropped from the mempool.
By default, Electrum flag transactions as RBF.


Mycelium has a bump fee option even without opt-in RBF and yes they do not have RBF yet it was propose on some developer 6 years ago but until now they do not have this flag.
However, the only option they added for stuck transaction in/outgoing is CPFP(as Bump fee).


Source img: https://m.facebook.com/groups/bitcoincz/permalink/692565890928648/

@pawel7777 if it was rebroadcasted recently you need to wait again for a few weeks until the mempool rejected it. But if you dont want to wait CPFP is your last hope to speed up this transaction ask the receiver to do this if he is using Electrum.
legendary
Activity: 2380
Merit: 5213
So if I want to switch to Electrum to use the RBF feature, I do not have to wait until it gets dropped from the mempool, right?
If a transaction has been flagged as RBF, you can bump the fee. Bumping the fee means that you replace an unconfirmed transaction with a new one paying higher fee without any need to wait for the tranaction to be dropped from the mempool.
By default, Electrum flag transactions as RBF.


Will I be able to see the unconfirmed transaction made in Myclium and bump it via Electrum?
You will see your unconfirmed transaction on electrum, but since it hasn't been flagged as RBF, you won't be able to bump its fee.
As already said, you will have to wait until your transaction is dropped from the mempool and then make a new transaction. Your new transaction can be a RBF-enabled transaction, so that you can bump its fee if required.
legendary
Activity: 1512
Merit: 4795
So if I want to switch to Electrum to use the RBF feature, I do not have to wait until it gets dropped from the mempool, right? Will I be able to see the unconfirmed transaction made in Myclium and bump it via Electrum?
What I have noticed is that all wallets that I know that do not support RBF only broadcast non-RBF transactions. The reason we should avoid them. But you can read about full RBF too which can make that possible in the future if most node runners and wallets support it.
legendary
Activity: 2408
Merit: 1555
Thanks both, really appreciate your help.

So if I want to switch to Electrum to use the RBF feature, I do not have to wait until it gets dropped from the mempool, right? Will I be able to see the unconfirmed transaction made in Myclium and bump it via Electrum?
legendary
Activity: 1512
Merit: 4795
I will still advice you not to use a wallet that do not support RBF and mycelium is still one of them. Just import the seed phrase on Electrum and continue with Electrum instead. Recently I used Bluewallet to rebroadcast a transaction after it did not get confirmed after a week too.

So I was thinking of deleting it, waiting for another week or so till it gets forgotten and then synchronising the wallet. Or maybe I'll just wait for it to be forgotten and then delete it. Not quite sure what do they mean by synchronizing - does it just mean refreshing, or is it more complex process?
It means if you delete the transaction and it has left most mempool and the mempool of the servers that mycelium is using, that the transaction will not appear again but show on your balance and you will be able to spend it again. To make your wallet synchronize again, some wallets have a button that you can click on, or better just close the wallet and open it again and it will synchronize again.

ps. How do I know if the transaction has been forgotten by the network, will it just be no longer visible in block explorers etc? Does it always take 2 weeks for it to be dropped, or can it take longer?
hosseinimr93 has answered this already. But also that if the mempool is very congested and become full at 300MB, low fee transactions would be replaced by high fee transactions and be dropped from the mempool. The low fee transactions can be rebroadcast again with higher fee.
legendary
Activity: 2380
Merit: 5213
So I was thinking of deleting it, waiting for another week or so till it gets forgotten and then synchronising the wallet. Or maybe I'll just wait for it to be forgotten and then delete it.
I suggest you to use electrum, so that you can make a RBF-enabled transaction.


Not quite sure what do they mean by synchronizing - does it just mean refreshing, or is it more complex process?
In a SPV wallet like mycelium, synchronizing means getting required data from the server.


ps. How do I know if the transaction has been forgotten by the network, will it just be no longer visible in block explorers etc? Does it always take 2 weeks for it to be dropped, or can it take longer?
Different nodes have different setting. The default setting is that transactions are dropped from the mempool after two weeks. It's possible that a node drops your transaction from its mempool after two weeks while another node will still keep your transaction.
After two weeks, most nodes will probably drop your transaction from their mempool and most block explorers will no longer display your transaction.
legendary
Activity: 2408
Merit: 1555
You noticed the wallet is rebroadcasting the transaction?

My bad, I clicked on re-broadcast few times, but there's actually a very quick pop up error message (visible for less than a second) saying "something went wrong exchange transaction id is null". So it's possible it did not get re-broadcasted at all (not sure how to check that).

Note that you can not let a transaction leave the mempool by yourself even if you are able to delete the transaction from history. But no good wallet should let you be able to do that.
...
If you are unable to rebroadcast the transaction after 2 weeks, import the seed phrase on Electrum.

Thanks, I'm aware of that, Mycelium has this warning message:


So I was thinking of deleting it, waiting for another week or so till it gets forgotten and then synchronising the wallet. Or maybe I'll just wait for it to be forgotten and then delete it. Not quite sure what do they mean by synchronizing - does it just mean refreshing, or is it more complex process?

ps. How do I know if the transaction has been forgotten by the network, will it just be no longer visible in block explorers etc? Does it always take 2 weeks for it to be dropped, or can it take longer?
legendary
Activity: 1512
Merit: 4795
I am not sure, but I think mycelium rebroadcast transactions automatically. If that's the case, you need to delete your wallet, so that it no longer broadcast your transaction. Before deleting your wallet, make sure that you will able to recover your wallet.
Maybe worth mentioning that if he did not let the wallet to synchronize at all, I mean by not clicking on the mycelium app at all, that will work too.

Suggestion
Mycelium is an open source wallet, but I can not recommend it. So I think he can just import the seed phrase on a better open source wallet like Electrum and delete Mycelium.
legendary
Activity: 2380
Merit: 5213
I just checked your transaction on some block explorers and it seems that it has been last broadcasted 1 week ago. It should be dropped from mempool of most nodes 1 week later. (By default, transactions are dropped from the mempool after two weeks.)

Import your wallet into electrum. Wait until your transaction is dropped from the mempool and then make a new transaction on electrum. With electrum, you can make RBF-enabled transaction, so that you can bump the fee if required.

Does Mycelium auto-rebroadcast unconfirmed transactions?
I am not sure, but I think mycelium rebroadcast transactions automatically. If that's the case, you need to delete your wallet, so that it no longer rebroadcast your transaction. Before deleting your wallet, make sure that you will be able to recover your wallet.
legendary
Activity: 1512
Merit: 4795
This would be helpful for this not to happen to you next time: Bitcoin open source wallets that support replace-by-fee (RBF)


The fee used is too low. You used 12.109 sat/vbyte.

I rebroadcasted it a few times, just in case, but no luck so far.
You were able to rebroadcast the transaction? If dropped from mempool again, use this mempool fee rate to set the fee: https://mempool.space/

What are my options now? Does Mycelium auto-rebroadcast unconfirmed transactions? If I delete the transaction from the wallet and it gets forgotten by the network - the message says I'd need to synchronize the wallet, how do I do that exactly?
This is kind of contradictory to what I first quote. You noticed the wallet is rebroadcasting the transaction?

Note that you can not let a transaction leave the mempool by yourself even if you are able to delete the transaction from history. But no good wallet should let you be able to do that.

Or is it just easier to use a paid-for miners tx bumping service?
Paid accelerators are very expensive.

If you are unable to rebroadcast the transaction after 2 weeks, import the seed phrase on Electrum.
legendary
Activity: 2408
Merit: 1555
I tried to send a transaction ~2 weeks ago or so, since there was no rush, I went with the "economic" fee, which was expected to get confirmed in around 2-3h.
I send the maximum amount, so there was nothing unspent to bump up the fee (CPFP). Despite getting additional funds, I still can't bump it, when trying, I'm getting this error: "Transaction has no utxo to form a child transaction or utxo has already been spent".

I rebroadcasted it a few times, just in case, but no luck so far.

Transaction details:

4e7d9250a5571008fc385fef67c3e6cef7d8adc8d6d171de0133eaff564779b2

What are my options now? Does Mycelium auto-rebroadcast unconfirmed transactions? If I delete the transaction from the wallet and it gets forgotten by the network - the message says I'd need to synchronize the wallet, how do I do that exactly?

Or is it just easier to use a paid-for miners tx bumping service?
Jump to: