Author

Topic: Mempool min fee (Read 270 times)

HCP
legendary
Activity: 2086
Merit: 4314
February 05, 2021, 07:06:58 AM
#17
mempool min fee automagically scales to try and hold the mempool below 300 Megabytes total... You can see what the current value is here: https://statoshi.info/dashboard/db/memory-pool as of the time of this post, it has just spiked up to near 3 sats/byte again.


Note that it is in sats/kb... so divide the value by 1000 for sats/byte.

Basically, by raising the mempool min fee, transactions below this value will (should?) be "dropped". Even if you find a node that will broadcast your transaction, propagation is likely to be poor as "default" nodes will ignore/reject it.
legendary
Activity: 2394
Merit: 5531
Self-proclaimed Genius
February 04, 2021, 12:10:24 AM
#16
So there is no relation between the broadcasting and the blockexplorer feature? I know each website is differente, -snip-
According to this: https://bitcoin.stackexchange.com/a/96070,
Broadcast is related to the node's "Min Transaction Relay Fee" setting, but will increase if the node's mempool size reached maximum.

I don't consider Blockcypher's explorer that accurate: https://live.blockcypher.com/btc/tx/6520a0cdd0e36df5d377852736c35b2a4ae31934f4473650207a06c36cf8d98c/.

Transaction is obviously non-final but it got broadcasted to their explorer anyways. Seems like they're omitting some checks before pushing the TX. Blockexplorers are not a reliable source of information when it comes to propagation, even if you can see it on a blockexplorer, it doesn't mean that it has a good propagation.
AFAIK, Blockcypher accepts non-standard transactions, that includes txns below their min relay fee and other 'issues' but will fail to relay them to most nodes, usually, they will drop it after a day or a few hours.
(just saved in their blockexplorer database, not relayed perhaps?)
legendary
Activity: 2954
Merit: 4158
February 03, 2021, 11:38:21 PM
#15
So there is no relation between the broadcasting and the blockexplorer feature? I know each website is differente, but when I manually broadcasted on blockcypher, I did see the transaction on their explorer. It was later (today) when I went to check again and it couldn't be found.
I don't consider Blockcypher's explorer that accurate: https://live.blockcypher.com/btc/tx/6520a0cdd0e36df5d377852736c35b2a4ae31934f4473650207a06c36cf8d98c/.

Transaction is obviously non-final but it got broadcasted to their explorer anyways. Seems like they're omitting some checks before pushing the TX. Blockexplorers are not a reliable source of information when it comes to propagation, even if you can see it on a blockexplorer, it doesn't mean that it has a good propagation.
legendary
Activity: 2268
Merit: 18509
February 03, 2021, 04:58:28 PM
#14
So there is no relation between the broadcasting and the blockexplorer feature?
As far as I am aware, blockcypher have never made public which nodes or how many nodes they use to broadcast transactions or use for their blockexplorer. It is entirely possible they broadcast your transaction to one node and looked it up from a different one.

I know each website is differente, but when I manually broadcasted on blockcypher, I did see the transaction on their explorer. It was later (today) when I went to check again and it couldn't be found.
It could be that it was initially added to that node's mempool, but as the mempool continued to fill up over the course of the day, it was later displaced from the bottom by other higher paying transactions.
copper member
Activity: 1582
Merit: 1319
I'm sometimes known as "miniadmin"
February 03, 2021, 04:51:42 PM
#13
---
So there is no relation between the broadcasting and the blockexplorer feature? I know each website is differente, but when I manually broadcasted on blockcypher, I did see the transaction on their explorer. It was later (today) when I went to check again and it couldn't be found.
legendary
Activity: 2268
Merit: 18509
February 03, 2021, 04:34:33 PM
#12
Just out of curioisty, I checked and well... blockchain.com doesn't find the transaction, and it's rather shocking to see that blockcypher doesn't either (considering I broadcasted it from there....). The transaction is however active, as blockchair does show it with no issue.
That means that whichever nodes blockchain.com and blockcypher.com are using to gather information for their block explorer have either not seen the transaction at all, or have seen it but not added it to their mempool since the fee is not high enough to displace another transaction out of the bottom of their mempool. The node that blockchair.com is using potentially has a higher maxmempool size, and so is not yet at its size limit and has space for your transaction.

copper member
Activity: 1582
Merit: 1319
I'm sometimes known as "miniadmin"
February 03, 2021, 09:53:32 AM
#11
I guess your transaction is SegWit and the fee rate is about 1-2sat/vB right?
Those services (like blockchain.com) computes the raw size of your transaction making the total fee rate in sat/B less than 1sat/B (not virtual Bytes), so they return with that error.
Well, that does actually make a lot of sense....

Quote
You can paste the TXID of the already broadcast transaction in the explorer of those sites that rejected it and you'll the that your fee rate is lower than minimum standard (only to them).
Just out of curioisty, I checked and well... blockchain.com doesn't find the transaction, and it's rather shocking to see that blockcypher doesn't either (considering I broadcasted it from there....). The transaction is however active, as blockchair does show it with no issue.

However, I see the same fee on vbytes and bytes; which doesn't make sense to me unless they have their system to show 1 as the bare minimum
legendary
Activity: 2394
Merit: 5531
Self-proclaimed Genius
February 03, 2021, 02:23:28 AM
#10
-snip-
I'd understand if it's Blockchain.com, they're very terrible at what they do.

But in the case of Coinb.in, would that still be the case? -snip-
I guess not.
Honestly I haven't reviewed that online wallet, but upon fiddling with the clickable options, I've found this: https://status.coinb.in/
Their Min Transaction Relay Fee is currently set to 10sat/vB, so the error in coinb.in is for a different reason, the "other 2" however may still be the "sat/B vs sat/vB" case.
legendary
Activity: 2954
Merit: 4158
February 03, 2021, 12:21:37 AM
#9
I guess your transaction is SegWit and the fee rate is about 1-2sat/vB right?
Those services (like blockchain.com) computes the raw size of your transaction making the total fee rate in sat/B less than 1sat/B (not virtual Bytes), so they return with that error.

You can paste the TXID of the already broadcast transaction in the explorer of those sites that rejected it and you'll the that your fee rate is lower than minimum standard (only to them).
I'd understand if it's Blockchain.com, they're very terrible at what they do.

But in the case of Coinb.in, would that still be the case? Assuming 9 (bech32) inputs and 1 output, it would be about ~651 vbytes and ~1616 bytes in actual size. However, the error appears to show that the min fee is only slightly above 2x of the required amount which would pretty much be within the margin of error for 1sat/vbyte to 2sat/vbytes.

I just tried it with Coinb.in and it shows 110 < 186 but in raw size, that should be 218.5 vbytes so that would still be below 1 sat/vbyte (if it's calculating by bytes, then it should show 110 < 218.5). I'm a bit confused with their logic to calculate the min fee. I'm thinking that they're actually calculating by the vbytes but the current mempool cutoff for those nodes are slightly above 1sat/vbyte.
legendary
Activity: 2394
Merit: 5531
Self-proclaimed Genius
February 03, 2021, 12:03:59 AM
#8
Edit 2: Alright, took 3 different websited but I was finally able to broadcast the damm tx.... blockchain.info came back with the same error, but blockcypher did broadcast without any bitching
I guess your transaction is SegWit and the fee rate is about 1-2sat/vB right?
Those services (like blockchain.com) computes the raw size of your transaction making the total fee rate in sat/B less than 1sat/B (not virtual Bytes), so they return with that error.

You can paste the TXID of the already broadcast transaction in the explorer of those sites that rejected it and you'll the that your fee rate is lower than minimum standard (only to them).
legendary
Activity: 2954
Merit: 4158
February 02, 2021, 10:58:58 PM
#7
Well, I know I can increase the fee, but I don't want to. It seems stupid that I have to pay abusive fees (lowest on the "reccomended" was around 60sat/byte) to consolidate my own transactions; when I'm in no rush to move them.

Thank you all that replied here; it was the very first time I had faced that error, but the reason for servers to decide to do this are still.... weak. The whole mempool is not that big, so I can't really understand how the server pool could be.
The current mempool size appears to be 100MB, might be slightly bigger. The actual ram usage should be about 300MB after accounting for the overheads. It is also the default max mempool size for most, most nodes would have the same mempool size. It may not seem like much but if you had to factor in the resource constraints of such servers, it would be pretty reasonable. Blockcypher might be able to broadcast your transaction but it won't mean that it would have a very good propagation; nodes are evicting the lower fees transactions and probably wouldn't accept anymore transactions under 2sat/byte.
copper member
Activity: 1582
Merit: 1319
I'm sometimes known as "miniadmin"
February 02, 2021, 04:42:30 PM
#6
It happened to me several times in the last few weeks. Reason is already stated above. Just increase the fees a bit, and you will be good. For me, 2 sat/Byte worked fine. 3 sat/b took several days to get confirmed last week. ---

Well, I know I can increase the fee, but I don't want to. It seems stupid that I have to pay abusive fees (lowest on the "reccomended" was around 60sat/byte) to consolidate my own transactions; when I'm in no rush to move them.

Thank you all that replied here; it was the very first time I had faced that error, but the reason for servers to decide to do this are still.... weak. The whole mempool is not that big, so I can't really understand how the server pool could be.

Will be trying the manual broadcasting tho




Well, this sucks; I just tried to manually broadcast the tx on coinb.in and got the following error:

Code:
mempool min fee not met, 679 < 1372 (code 66)

Edit 2: Alright, took 3 different websited but I was finally able to broadcast the damm tx.... blockchain.info came back with the same error, but blockcypher did broadcast without any bitching
legendary
Activity: 2464
Merit: 3878
Visit: r7promotions.com
February 02, 2021, 10:40:44 AM
#5
It happened to me several times in the last few weeks. Reason is already stated above. Just increase the fees a bit, and you will be good. For me, 2 sat/Byte worked fine. 3 sat/b took several days to get confirmed last week. I had a tx and I was keeping an eye on the tx for some reason LOL

Most Electrum servers tends to raise their minimum relay fee for their mempool when the mempool gets too big. If you insist on using 1sat/byte, you'd want to use Export>Copy to Clipboard and go coinb.in/#broadcast or other similar utility to broadcast the raw transaction, they shouldn't have such restrictions.
I was not aware of it or I would use it instead of 2 sat/B :-D
legendary
Activity: 3584
Merit: 1560
February 02, 2021, 04:00:21 AM
#4
I was getting ready to do a consolidation transaction on Electrum from a Trezor One Hardware Wallet.

As procedure says, I selected coin control from the address in question, and proceeded to max it out into a new addy with a 1 sat/byte fee (no rush order). Much to my surprise, after signing the tx, and when trying to broadcast it; I got a "mempool min fee not met" error. Transaction size is not really big; smaller than 700 bytes, and I've transacted many times using the 1sat fee in the past.

Am I missing something here?

The electrum server you are connected has this pool of unconfirmed transactions that it knows about. There's limited space in that pool so it limits itself to the highest paying transactions. Your fee of 1 sat/byte is too low for your transaction to be included in that server's mempool. What you can do is either raise the fee or switch to a different server and then go to the history tab, right click on the transaction marked local > view transaction and click broadcast.
legendary
Activity: 2954
Merit: 4158
February 01, 2021, 12:22:51 PM
#3
Most Electrum servers tends to raise their minimum relay fee for their mempool when the mempool gets too big. If you insist on using 1sat/byte, you'd want to use Export>Copy to Clipboard and go coinb.in/#broadcast or other similar utility to broadcast the raw transaction, they shouldn't have such restrictions.
copper member
Activity: 2856
Merit: 3071
https://bit.ly/387FXHi lightning theory
February 01, 2021, 11:05:19 AM
#2
What size fee did you set?

It's possible some servers have started only accepting transactions at a higher fee and you can either use a higher fee (probably 2 sats per byte), switch server or use a site that can broadcast over the mempool such as a block explorer or coinb.in.
copper member
Activity: 1582
Merit: 1319
I'm sometimes known as "miniadmin"
February 01, 2021, 10:58:04 AM
#1
I was getting ready to do a consolidation transaction on Electrum from a Trezor One Hardware Wallet.

As procedure says, I selected coin control from the address in question, and proceeded to max it out into a new addy with a 1 sat/byte fee (no rush order). Much to my surprise, after signing the tx, and when trying to broadcast it; I got a "mempool min fee not met" error. Transaction size is not really big; smaller than 700 bytes, and I've transacted many times using the 1sat fee in the past.

Am I missing something here?
Jump to: