Author

Topic: RBF broken? (Read 232 times)

legendary
Activity: 3808
Merit: 1723
January 14, 2021, 11:57:00 PM
#14
I actually made a similar mistake as you when BTC hit $40K and I was trying to get a transaction sent as fast as possible before the prices dropped. Basically its been months since I last used Electrum and I didn't realise I forgot a step.

But it was similar issue to yours. I would load the unsigned transaction, look it over, make sure the destination and change address is correct, check the fees, check the amount to send, then I would click the QR code and try to broadcast it, however it would fail.

Looked like a signed transaction, when in fact it wasn't. So after going back and forth, I asked myself, "Wait a minute, did you click "SIGN"" and then the QR code looked slightly larger and it finally worked.

This was mostly due to the fact that I was rushing since price was high. Was panicking and everything.
legendary
Activity: 1652
Merit: 1483
January 14, 2021, 02:40:33 PM
#13
thanks, guys---that explains it. i went back and reproduced the error. when i export an unsigned replacement transaction, it looks like this on my watching-only wallet:



but when i import to my offline wallet, it looks like this:



the first few times this happened, i was on autopilot and assumed i had already signed it. in the UI, it looks like any other signed transaction, with the "sign" button greyed out. and when i import it back into the watching-only wallet, it looks the same---like a transaction ready to be broadcast. but when you try to broadcast it, you get the decode error.

if you look at the hex it starts with 45505446ff. the transaction was indeed unsigned!

you have to be using the latest electrum on both offline and online devices.

as i had feared. Sad
legendary
Activity: 3710
Merit: 1586
January 14, 2021, 03:34:17 AM
#12
old versions can't grok the newer unsigned transaction format. it's right there in the release notes:

https://github.com/spesmilo/electrum/blob/master/RELEASE-NOTES#L123

you have to be using the latest electrum on both offline and online devices.
legendary
Activity: 2618
Merit: 6452
Self-proclaimed Genius
January 14, 2021, 02:20:59 AM
#11
I'm able to reproduce it in v3.3.4 by simply loading an unsigned transaction replacement to the same wallet and it was loaded as signed (the "broadcast" button is available and "sign" is grayed-out).
'Broadcast' produced the same error.
After using "increase fee", I used 'copy', closed that transaction window and loaded it using "Tools->Load transaction->From text"

Perhaps this is the same issue as #5491 which was fixed in v3.3.8.
The only way to fix this is to upgrade both wallets.

You sure you had RBF enabled when you made the original transaction? Its been years since I've sent a transaction without RBF enabled so I am not sure. However I think the way it works is, if you send a transaction without RBF any other transaction will get rejected by nodes because its detected as a double spend. I am not an expect on this so I am not 100% sure this is the reason.
-snip-
Without RBF, the error message will be "input missing or spent" instead of "TX decode failed".
legendary
Activity: 3472
Merit: 10611
January 14, 2021, 01:42:14 AM
#10
"Error Parsing Transaction".
Are you sure the transaction you are trying to broadcast is actually signed?
The unsigned transactions (checking 3.3.6) start with an identifier that is added before the actual transaction hex. It starts with 45505446ff00 for my simple P2PKH output, and if you put that in a tx parser it will fail to decode it.
Check if your tx hex starts with this or 02000000 or 01000000 depending on your tx version (it should be 2).
legendary
Activity: 3808
Merit: 1723
January 14, 2021, 12:31:32 AM
#9
You sure you had RBF enabled when you made the original transaction? Its been years since I've sent a transaction without RBF enabled so I am not sure. However I think the way it works is, if you send a transaction without RBF any other transaction will get rejected by nodes because its detected as a double spend. I am not an expect on this so I am not 100% sure this is the reason.

However usually just broadcasting the should work. Did you first decode the base 43 transaction first using,
http://electrum43.org/

The QR code returns an error unless its converted first using that website. You can save it and use it offline for security.

Let me know when you finally figure it out, just puzzled what the issue here is.
legendary
Activity: 3038
Merit: 4418
Crypto Swap Exchange
January 13, 2021, 10:09:18 PM
#8
Can you decode the transaction on any websites and/or wallets? Try https://coinb.in/#verify.

I had difficulties pushing through blockchain.info so that's not a very good website. If you don't mind, you can PM me the raw TX and I'll see if anything is wrong. It's hard to see the problem and I can't reproduce it.
legendary
Activity: 1652
Merit: 1483
January 13, 2021, 09:35:29 PM
#7
How about manually broadcasting them to https://coinb.in/#broadcast or use the same version in your watch-only wallet(3.3.4)?

thanks, i just tried pushing the updated tx through https://coinb.in/#broadcast and it returned error "TX decode failed". and https://blockchain.info/pushtx returns "Error Parsing Transaction".

my watching-only wallet and offline wallet are both the same version---3.3.4.

weird...
legendary
Activity: 3472
Merit: 3217
Playbet.io - Crypto Casino and Sportsbook
January 13, 2021, 05:51:34 PM
#6

3.3.4.

How about the watch-only wallet what version of Electrum do you use?

If you are using the latest version of Electrum or you created the raw transaction from a different wallet software like bitcoin core there might be a compatibility issue.

According to Electrum documentation "The older version will not always be able to read the new wallet file" so it might be the same for the latest version(watch-only) where you created unsigned TX then sign with the old version(3.3.4).
When you are broadcasting it to your online wallet you get the error "TX decode failed" what I think is after you signed the raw transaction it might be generated an invalid raw/hex transaction due to compatibility issue that is why you get the "TX decode failed" error.

How about manually broadcasting them to https://coinb.in/#broadcast or use the same version in your watch-only wallet(3.3.4)?
legendary
Activity: 1652
Merit: 1483
January 13, 2021, 04:09:32 PM
#5
How much did you increase the fee?
The amount you add to the fee must be bigger the relay fee.

Assuming the relay fee of the node is 1 satoshi/vbyte, for replacing the transaction with a new one, you have to increase the fee by at least 1 sat/vbyte.

Quote from: BIP 0125
The replacement transaction must also pay for its own bandwidth at or above the rate set by the node's minimum relay fee setting.

thanks. i did come across that rule while researching this problem.

-original tx: 110 bytes (0.00001 fee)
-replacement tx: 131 bytes (0.00008 fee)

that yields the same error, so i assume there is a different issue at hand?
legendary
Activity: 2380
Merit: 5213
January 13, 2021, 03:53:42 PM
#4
How much did you increase the fee?
The amount you add to the fee must be bigger than the relay fee.

Assuming the relay fee of the node is 1 satoshi/vbyte, for replacing the transaction with a new one, you have to increase the fee by at least 1 sat/vbyte.

Quote from: BIP 0125
The replacement transaction must also pay for its own bandwidth at or above the rate set by the node's minimum relay fee setting.
legendary
Activity: 1652
Merit: 1483
January 13, 2021, 03:17:45 PM
#3
What version are you running?

3.3.4.

my keys stay offline so i generally don't update unless there is a critical security issue, or something that literally breaks the wallet. there's nothing i hate more than downloading files off the internet and installing them on my offline computer...
copper member
Activity: 2856
Merit: 3071
https://bit.ly/387FXHi lightning theory
January 13, 2021, 03:05:52 PM
#2
What version are you running?
legendary
Activity: 1652
Merit: 1483
January 13, 2021, 03:03:10 PM
#1
i've had a transaction stuck for days. after bumping the fee, i get this error whenever i try broadcasting:



it's not a server issue. this is an offline wallet with a lot of history so sadly i can't even locate the sending output in the offline wallet to sweep the private key either. i'm just completely stuck.

do i seriously need to download an electrum update just to be able to broadcast an RBF transaction?
Jump to: