Pages:
Author

Topic: Transaction pending after 1 week (Read 246 times)

legendary
Activity: 1568
Merit: 6660
bitcoincleanup.com / bitmixlist.org
August 01, 2023, 04:49:19 AM
#28
Once a UTXO is in an unconfirmed transaction, it can't be used to make another one because it's going to be spent very soon
But that's exactly what RBF is - taking a UTXO which is already being spent in an unconfirmed transaction, and spending it again with a higher fee, therefore replacing the original transaction.

RBF works in most cases but I was talking about the one where you need to make a bunch of different payments at once, so you'd need a completely different receiving address, which is not how RBF is normally used.

Of course, pay-to-many should have been used from the beginning in those cases, and you can actually use RBF to replace a transaction with such, but again, most wallets that support RBF do not support changing the receiving addreses, and also autoselect the sending addresses obviously.
legendary
Activity: 2268
Merit: 18509
August 01, 2023, 02:45:29 AM
#27
Once a UTXO is in an unconfirmed transaction, it can't be used to make another one because it's going to be spent very soon
But that's exactly what RBF is - taking a UTXO which is already being spent in an unconfirmed transaction, and spending it again with a higher fee, therefore replacing the original transaction.

The Electrum setting "Spend unconfirmed outputs" should be switched off for this reason.
This setting only prohibits you from spending unconfirmed outputs you are receiving in to one of your addresses. It does not prevent you from using already confirmed outputs which are being spent elsewhere in an RBF replacement transaction. I'm not sure I agree about turning it off since then it limits your option and prevents you from using CPFP. Better simply to learn how transactions and UTXOs work so you understand what is going on.
legendary
Activity: 1568
Merit: 6660
bitcoincleanup.com / bitmixlist.org
August 01, 2023, 02:38:51 AM
#26
guys you rock

i tried with 30sat, finally ! direclty accepted \o/
https://ibb.co/LPMmR8x

a little expensive but wow it solved my problem

but no at all
there is still an unconfimed transaction but i think it's on the way

now i will try to never send to myself mBtc lol

thanks again for your time



Yeah, when you send Bitcoins in any kind of transaction, it's going to use some of your UTXOs to make that transaction - Electrum has a tab to show you the UTXOs you have available.

Once a UTXO is in an unconfirmed transaction, it can't be used to make another one because it's going to be spent very soon, so if you're not careful you could end up with a lot of bitcoin UTXOs stuck in unconfirmed transactions with low fees.

The Electrum setting "Spend unconfirmed outputs" should be switched off for this reason.
legendary
Activity: 2268
Merit: 18509
August 01, 2023, 02:36:55 AM
#25
But I don't understand why. More specifically, why would miners not replace three transactions at 10 sat/vB (for example) by a single one at 11 sat/vB ? Because of course it's less fees overall, but also less space used, so the important metric should be the fee/space_used ratio (that is, the sat/vB rate). What am I missing?
Great question. There are two main reasons why a replacement transaction must pay higher fees than all the unconfirmed transactions it is replacing.

The first reason you almost figured out yourself in the sentence I quoted above. Taking your example - let's say I have a chain of three unconfirmed transactions paying 10 sats/vbyte each. I want to replace the first one with a new transaction paying 11 sats/vbyte, which would evict the other two, freeing up space for the miner to include other transactions. But maybe the next highest fee paying transactions in the mempool which the miner can include only pay 3 sats/vbyte. It then makes more sense for the miner to ignore my replacement and mine my three original transactions at 10 sats/vbyte each, than it does for them to accept my replacement and mine one transaction at 11 sats/vbyte and two transactions at 3 sats/vbyte. My replacement must therefore pay more than all the transactions it is evicting to ensure it is always economical for miners to accept it.

The second reason is DoS protection. Let's say I broadcast a transaction at 1 sat/vbyte when the mempool is quite full and I know it isn't going to be confirmed any time soon. I then broadcast 20 more transactions building on this transaction, with a combined size of tens of thousands of bytes, all paying 1 sat/vbyte. Every node in the network has to receive, validate, and then broadcast my huge transactions. I can then immediately cancel all of those transactions by replacing my original transaction at a fee of 1.01 sats/vbyte. I can then broadcast another 20 more new child transactions with a huge size building on this replacement, which again, every node has to receive, validate, and broadcast. I can then cancel them all by replacing my original transaction again with a new one paying 1.02 sats/vbyte. I can repeat this thousands of times for almost zero cost and completely spam out the network. But by making me pay a fee higher than all the transactions I am evicting, this kind of attack rapidly becomes prohibitively expensive.
legendary
Activity: 2394
Merit: 5531
Self-proclaimed Genius
August 01, 2023, 01:43:55 AM
#24
But I don't understand why. More specifically, why would miners not replace three transactions at 10 sat/vB (for example) by a single one at 11 sat/vB ? Because of course it's less fees overall, but also less space used, so the important metric should be the fee/space_used ratio (that is, the sat/vB rate). What am I missing?
It's all about BIP125's standard which is widely adapted by nodes.
BIP-0125: https://github.com/bitcoin/bips/blob/master/bip-0125.mediawiki#implementation-details

For the "space used", the client can consolidate it into one transaction if the user choses to, in fact Electrum has a "Batch unconfirmed transactions" option to do so.
but the fee must still comply with the standard which is equal to the fee of the to-be-replaced transactions plus its own fee.
legendary
Activity: 3234
Merit: 2943
Block halving is coming.
July 31, 2023, 07:18:20 PM
#23
yes of course, i still dont understand how i could make the mistake four times
but now i have selected "send only confirmed money"
hope i will never do the mistake

to resume i didnt sent coin to other address except mine for 30sat?


The only mistake you did is that you tried to bump the transaction but you paid a low fee. Because when using the bump fee feature on Electrum you need to increase the fee more than the previous transaction but you paid it low than the recommendation.

And there is no problem sending your BTC to your wallet and actually, it helps to consolidate all UTXO into one that can reduce the transaction fee in the future when you made a new transaction.
legendary
Activity: 2380
Merit: 5213
July 31, 2023, 06:56:13 PM
#22
But I don't understand why. More specifically, why would miners not replace three transactions at 10 sat/vB (for example) by a single one at 11 sat/vB ? Because of course it's less fees overall, but also less space used, so the important metric should be the fee/space_used ratio (that is, the sat/vB rate). What am I missing?
I think that's to make abusing RBF feature more expensive.


Edit: or maybe miners would mine it but the transaction isn't relayed by nodes because it's just not in compliance with the BIP?
Miners are free to include any valid transaction. Miners can include the replacing transaction, even if it pays less fee. But since almost all nodes follow standard rules, your replacing transaction has to meet the requirements stated in BIP125.
F2b
hero member
Activity: 2076
Merit: 859
July 31, 2023, 06:12:57 PM
#21
BIP125 says that:

Quote
3. The replacement transaction pays an absolute fee of at least the sum paid by the original transactions.

The thing I am not sure about is what exactly "original transactions" refers to.
Does it mean the transactions that have the same input(s) as the replacing transaction or their unconfirmed children are also included?

Considering what happened to OP when trying to increase the fee, it seems that it's the latter.

Hi, I've been following this case from the French sub-forum and am trying to understand this.
As you said, and considering that the problem was (apparently) solved by putting the suggested fee, it seems that unconfirmed children were indeed included.

But I don't understand why. More specifically, why would miners not replace three transactions at 10 sat/vB (for example) by a single one at 11 sat/vB ? Because of course it's less fees overall, but also less space used, so the important metric should be the fee/space_used ratio (that is, the sat/vB rate). What am I missing?

Edit: or maybe miners would mine it but the transaction isn't relayed by nodes because it's just not in compliance with the BIP?
legendary
Activity: 2212
Merit: 7064
Cashback 15%
July 31, 2023, 04:19:57 PM
#20
I cant increase fees i wish i can do
You can certainly increase your fees if you sent RBF transaction like you did, but I would recommend always checking state of bitcoin mempool before making a transaction, especially if you are in a hurry.
Easiest way of doing this is by using Mempool.space website that gives you recommended fees with different priorities, and higher fees means faster transaction confirmaion.
As for correct addresses, it's easy to copy-paste and then visually confirm addresses, I hope you are not manually typing every character  Roll Eyes

newbie
Activity: 20
Merit: 12
July 31, 2023, 02:35:28 PM
#19

Clipboard malware could replace your intended target address(es) by some address(es) of a thief. You want to be sure that you have exactly the right target address(es) in the send dialog. It usually is enough to check a bunch of characters at the beginning (exclude the bc1 prefix), in the middle and carefully the last 6-8 characters.

yes of course, i still dont understand how i could make the mistake four times
but now i have selected "send only confirmed money"
hope i will never do the mistake

to resume i didnt sent coin to other address except mine for 30sat?

was a good lesson :p

thanks guys Wink
hero member
Activity: 714
Merit: 1010
Crypto Swap Exchange
July 31, 2023, 02:26:24 PM
#18
but no at all
there is still an unconfimed transaction but i think it's on the way

now i will try to never send to myself mBtc lol

As I write this it should have gotten the first confirmation. But dude, seriously, the destination address(es) are probably the most important thing that you should always check very carefully when you are about to send out coins!

Clipboard malware could replace your intended target address(es) by some address(es) of a thief. You want to be sure that you have exactly the right target address(es) in the send dialog. It usually is enough to check a bunch of characters at the beginning (exclude the bc1 prefix), in the middle and carefully the last 6-8 characters.

If you want to practice sending transactions properly I suggest you invoke Electrum in Testnet mode, create two new Testnet Bitcoin wallets, fetch some Testnet Bitcoins for free from https://testnet.coinfaucet.eu and play around. Send coins from Testnet-wallet-1 to Testnet-wallet-2 and vice versa. You can also play around with Coin Control and Send-Many and whatnot.

Practice, repeat, practice makes perfect!
newbie
Activity: 20
Merit: 12
July 31, 2023, 02:24:47 PM
#17
yes it's running  Roll Eyes

i had 1 merit point, sorry i'm new here i dont know at which person i have sent it between o_e_l_e_o and hosseinimr93
but thank youu
legendary
Activity: 2268
Merit: 18509
July 31, 2023, 02:21:28 PM
#16
guys you rock
Glad you got it working!

there is still an unconfimed transaction but i think it's on the way
That's the transaction you just made. It's very close to the tip of the mempool given the high fee, so it will almost certainly be confirmed in the next block. I can confirm all your child transactions have been evicted from the mempool.

Edit: It's already been confirmed. All unconfirmed transactions should now have been cleared from your wallet.
newbie
Activity: 20
Merit: 12
July 31, 2023, 02:16:04 PM
#15
guys you rock

i tried with 30sat, finally ! direclty accepted \o/
https://ibb.co/LPMmR8x

a little expensive but wow it solved my problem

but no at all
there is still an unconfimed transaction but i think it's on the way

now i will try to never send to myself mBtc lol

thanks again for your time

legendary
Activity: 2268
Merit: 18509
July 31, 2023, 01:42:57 PM
#14
Does it mean the transactions that have the same input(s) as the replacing transaction or their unconfirmed children are also included?
The "original transactions" are all the transactions which are currently in the mempool which will be evicted by the replacement. So if the unconfirmed transaction you intended to replace has 5 unconfirmed children, then you must pay a fee higher than the total of all 6 unconfirmed transactions which are to be evicted.

The total size of OP's 4 transactions is 2,933 WU. The total fee paid is 3,891 sats. The combined fee rate therefore is 5.307 sats/vbyte.

To replace the first transaction and evict the other 3 child transactions, his replacement transaction would need to pay a fee of at least 4,031 sats for a 140 vbyte transaction, which would be a rate of 28.8 sats/vbyte.

So I would agree with hosseinimr93, and pay 30 sats/vbyte to be on the safe side.
newbie
Activity: 20
Merit: 12
July 31, 2023, 01:28:44 PM
#13
thanks a lot for your help
legendary
Activity: 2380
Merit: 5213
July 31, 2023, 01:26:59 PM
#12
I tried to change of servers, the 14 days correspond to the first day i have sent the transaction or 14 days on a server?
Your transaction will be dropped from mempool of most nodes 14 days after they were broadcasted to the network (7 days from today).
Take note that you didn't change anything with connecting to a different server.
newbie
Activity: 20
Merit: 12
July 31, 2023, 01:00:46 PM
#11
I tried to change of servers, the 14 days correspond to the first day i have sent the transaction or 14 days on a server?
thanks
legendary
Activity: 2380
Merit: 5213
July 31, 2023, 12:06:32 PM
#10
I have just seen this. He supposed to increase the child transaction fee, not the parent. Although, I am surprised that the parent (the first transaction) was unable to increase in fee. But how about increasing the child transaction fee. Probably that should work.
BIP125 says that:

Quote
3. The replacement transaction pays an absolute fee of at least the sum paid by the original transactions.
4. The replacement transaction must also pay for its own bandwidth at or above the rate set by the node's minimum relay fee setting. For example, if the minimum relay fee is 1 satoshi/byte and the replacement transaction is 500 bytes total, then the replacement must pay a fee at least 500 satoshis higher than the sum of the originals.

The thing I am not sure about is what exactly "original transactions" refers to.
Does it mean the transactions that have the same input(s) as the replacing transaction or their unconfirmed children are also included?

Considering what happened to OP when trying to increase the fee, it seems that it's the latter.

If that's the case and OP wants to replace the first transaction with a new one, there are four transactions that must be removed from the mempool.
The absolute fee that is paid for the replacing transaction must be bigger than the total fee paid for those four transactions which is around 0.000039 BTC.
According to rule number 4, the replacing transaction must pay another ~140 satoshi too.

In the case my calculations are correct and OP wants to replace the first transaction with a new one, the replacing transaction must have the fee rate of around 30 sat/vbyte.
newbie
Activity: 20
Merit: 12
July 31, 2023, 11:54:15 AM
#9
The more you increase the fee, the more you have to waste money.
If you are not in hurry, wait for 1 more week. If your transactions are not confirmed by that time, most nodes will drop them from their mempool and you will be able to make a new transaction without having to pay a very big fee.

By default, transactions are dropped from the mempool, if they remain unconfirmed for 14 days.  

Anyway i cant increase parent or child.
Well that's a good news, i can wait 7 more days,   Wink

so i will come back in a week to let you know what happened
Pages:
Jump to: