Improve "mempool min fee not met" error to include information on what the min fee is #11955

issue fresheneesz opened this issue on December 20, 2017
  1. fresheneesz commented at 1:14 AM on December 20, 2017: none

    <!-- Describe the issue -->

    When sending a transaction with a low fee, you can sometimes get an error saying "mempool min fee not met".

    <!--- What behavior did you expect? -->

    I would expect an error like this to include information about what the minimum fee is.

    <!-- What version of Bitcoin Core are you using, where did you get it (website, self-compiled, etc)? -->

    I'm using Electrum 3.0.2 in which you can see the raw error from this when you send a low fee transaction when its relayed to an electrum server.

  2. fanquake added the label Mempool on Dec 20, 2017
  3. MarcoFalke added the label Utils/log/libs on Dec 20, 2017
  4. MarcoFalke added the label good first issue on Dec 20, 2017
  5. Varunram commented at 2:39 PM on December 21, 2017: contributor

    @fresheneesz Could you explain as to where you saw this error? Some more info like logs would be really useful. Thanks!

  6. fresheneesz commented at 9:07 PM on December 21, 2017: none

    There's not much more to explain than is in this issue and the electrum issue. I tried to increase the fee with a replace-by-fee transaction and it popped up a message box with an error that said "mempool min fee not met" with some additional information (none of which looked like it included the min fee). I can't repro right now and even if I could, electrum displayed the error in a way where the whole thing couldn't be seen fully or copied.

  7. ezspot commented at 12:02 AM on December 22, 2017: none

    I get the same message. bitcoin

    Using Electrum 3.0.3 / Windows 10 64bit

  8. 0xB10C commented at 12:10 AM on December 22, 2017: member

    The amount of system memory allocated for unconfirmed transactions is defined with the option maxmempool. maxmempool defaults to 300MB of RAM. Once the maxmempool-memory is fully used, the lowest-fee transactions are dropped from the nodes mempool and mempoolminfee is increased to reject lower-fee transactions.

    The mempoolminfee thus is dependent on the current memory usage and the configured maxmempool. Connecting to another Electrum Server connected to a node with custom (higher) maxmempool could work. However the underlying node might accept the transaction but then failes to broadcast it to a peer/peers with a default maxmempool of 300MB. The transaction does not meet their min-fee expecations.

    A core node could return it's current mempoolminfee in the error output, but that would not inform about the mempoolminfee of it's peers.

    bitcoin-cli getmempoolinfo shows the current mempoolminfee.

    Q: Why is the mempoolminfee not specifyed as fee-rate (sat/vbyte)?

  9. fresheneesz commented at 12:28 AM on December 22, 2017: none

    @spot88 That's the one that got me...

  10. fresheneesz commented at 12:31 AM on December 22, 2017: none

    A core node could return it's current mempoolminfee in the error output, but that would not inform about the mempoolminfee of it's peers.

    I'd be perfectly happy with that. Nothing's perfect. But if your aim is to submit something at the minimum and you know that risks that the transaction might be evicted, right now I have pretty much no recourse. I have no feedback on what min fee might be accepted. At least if your peer tells you their min fee, you can submit back to them, or it should give you some idea of the min fee for other peers (who will then reject you with their own min fee message that you can then use to resubmit with that higher fee).

    bitcoin-cli getmempoolinfo shows the current mempoolminfee.

    So something like electrum could use this to determine a remote node's minimum fee?

  11. Varunram commented at 3:03 PM on December 22, 2017: contributor

    @fresheneesz: Yes, electrum could use the call to get the minimum mempool fee or we could edit the error returned. But since that's already there in the logs, I think it would be better if you request the folks over at electrum. @0xB10C: You could open an issue to change it from btc/KB now :)

  12. fresheneesz commented at 7:30 PM on December 22, 2017: none

    @Varunram Thanks for the info guys! I'll throw that back into the electrum issue.

  13. Empact referenced this in commit b4519f0689 on Feb 6, 2018
  14. Empact referenced this in commit 895eba0c9e on Feb 7, 2018
  15. Empact referenced this in commit bb00c95c16 on Feb 8, 2018
  16. laanwj referenced this in commit fd65937ec6 on Feb 15, 2018
  17. Empact commented at 6:50 AM on February 16, 2018: member

    Now that #12356 is merged, the error message includes the attempted fee and the minimum fee (both in satoshis), e.g.: mempool min fee not met, 166 < 411 (code 66). I think we can close this. /cc @laanwj

  18. fresheneesz commented at 9:23 AM on February 16, 2018: none

    166 < 411 ? Units, people!

  19. laanwj closed this on Feb 16, 2018

  20. laanwj commented at 10:16 AM on February 16, 2018: member

    I agree that specifying units would be nice, but think enough information has been added to close the issue (all the internal low-level stuff uses satoshis.)

  21. Willtech referenced this in commit 94380856e0 on Feb 23, 2018
  22. HashUnlimited referenced this in commit b801f3c420 on Jul 31, 2018
  23. lionello referenced this in commit 03de792f6c on Nov 7, 2018
  24. PastaPastaPasta referenced this in commit 3c0f689243 on Jun 9, 2020
  25. PastaPastaPasta referenced this in commit 5cd83205ab on Jun 9, 2020
  26. PastaPastaPasta referenced this in commit b2735215d5 on Jun 10, 2020
  27. PastaPastaPasta referenced this in commit 44ed3001c2 on Jun 10, 2020
  28. PastaPastaPasta referenced this in commit 831ff51a7f on Jun 11, 2020
  29. PastaPastaPasta referenced this in commit bec0ce9cba on Jun 11, 2020
  30. DrahtBot locked this on Sep 8, 2021

github-metadata-mirror

This is a metadata mirror of the GitHub repository bitcoin/bitcoin. This site is not affiliated with GitHub. Content is generated from a GitHub metadata backup.
generated: 2026-04-13 15:15 UTC

This site is hosted by @0xB10C
More mirrored repositories can be found on mirror.b10c.me