sendrawtransaction maxfeerate is interpreted as absolute fee by default #16382

issue MarcoFalke openend this issue on July 13, 2019
  1. MarcoFalke commented at 3:12 pm on July 13, 2019: member

    When the newly introduced "maxfeerate" option is not passed, the default fee rate is interpreted as an absolute amount. However, when it is passed, it is interpreted as a fee rate. Thus, the rpc will return different results when the value is explicitly set to the default.

    See

    https://github.com/bitcoin/bitcoin/blob/536590f358dc3d3e5821eba7f1009452ea93b205/src/rpc/rawtransaction.cpp#L797-L807

    I think we should change it back to an absolute value in BTC (not a feerate)

    This was changed to a feerate by @kallewoof, so ping him to see if there was a specific reason to switch.

  2. MarcoFalke added the label good first issue on Jul 13, 2019
  3. MarcoFalke added the label RPC/REST/ZMQ on Jul 13, 2019
  4. MarcoFalke added the label TX fees and policy on Jul 13, 2019
  5. MarcoFalke commented at 3:19 pm on July 13, 2019: member
    I guess I don’t feel strongly whether it should be a feerate or absolute amount. Most importantly it should be consistent.
  6. MarcoFalke added this to the milestone 0.19.0 on Jul 13, 2019
  7. MarcoFalke added the label Bug on Jul 13, 2019
  8. jasoncadahia commented at 7:42 pm on July 13, 2019: none
    Sorry, I’m new - how can you tell what happens when maxfeerate is not passed? I’m assuming maxfeerate is the same thing as params[1], and that we’d need see what happens when request.params[1].isNull() is true to know this. Again, sorry I’m new (and not the most experienced programmer either).
  9. MarcoFalke deleted a comment on Jul 13, 2019
  10. promag commented at 11:29 pm on July 16, 2019: member

    For reference #13541.

    Good catch. By consistent you mean that in testmempoolaccept it should also be absolute amount?

  11. kallewoof commented at 1:37 am on July 17, 2019: member

    I don’t think it’s inconsistent. There is a default max fee that is set in the system, and the user can override it with a fee rate. Forcing the user to guess the size of the transaction in order to hit 1 sat/byte (or whatever they’re aiming for) is counterproductive.

    Edit: having a “default max fee rate” sounds like a good improvement though, IMO. Not sure what a sane value would be though. And what would the wallet do when the blocks were filling up with higher feerate txs? Capping sounds like a bad idea in general. Throwing an error sounds even worse.

  12. MarcoFalke commented at 12:56 pm on July 17, 2019: member

    I don’t think it’s inconsistent. @kallewoof The help text currently says that the default is 0.10 BTC/kB, the code says that the default is 0.10 BTC. This is clearly inconsistent.

    02. maxfeerate    (numeric or string, optional, default=0.10) Reject transactions whose fee rate is higher than the specified value, expressed in BTC/kB.
    1                 Set to 0 to accept any fee rate.
    
  13. kallewoof commented at 2:59 am on July 18, 2019: member
    You’re correct, that is indeed inconsistent.
  14. laanwj closed this on Sep 18, 2019

  15. sidhujag referenced this in commit 1871f280a4 on Sep 23, 2019
  16. MarcoFalke locked this on Dec 16, 2021
  17. vijaydasmp referenced this in commit 21b095d7c0 on Sep 11, 2022
  18. vijaydasmp referenced this in commit 1daa8e0b28 on Sep 11, 2022
  19. vijaydasmp referenced this in commit f8a88dff28 on Sep 13, 2022
  20. vijaydasmp referenced this in commit 8b96c7ce91 on Sep 16, 2022
  21. vijaydasmp referenced this in commit e89324df72 on Sep 17, 2022
  22. vijaydasmp referenced this in commit d98c2b1259 on Sep 17, 2022
  23. vijaydasmp referenced this in commit 8f0d6ee330 on Sep 17, 2022
  24. vijaydasmp referenced this in commit d7052d38cc on Sep 17, 2022
  25. vijaydasmp referenced this in commit 2312af9b5b on Sep 19, 2022
  26. vijaydasmp referenced this in commit 10fa00870f on Oct 1, 2022
  27. vijaydasmp referenced this in commit 6ed556ea32 on Oct 6, 2022
  28. vijaydasmp referenced this in commit c575ec7626 on Nov 13, 2022
  29. vijaydasmp referenced this in commit 1f379df4fd on Nov 13, 2022
  30. vijaydasmp referenced this in commit 37ed6c3540 on Nov 26, 2022
  31. vijaydasmp referenced this in commit 697ae99fe4 on Dec 4, 2022
  32. vijaydasmp referenced this in commit be2c523898 on Dec 5, 2022
  33. vijaydasmp referenced this in commit 6b7d1af093 on Dec 6, 2022
  34. vijaydasmp referenced this in commit b606fc59de on Dec 9, 2022
  35. vijaydasmp referenced this in commit 6e30734771 on Dec 11, 2022
  36. vijaydasmp referenced this in commit 84a1100c87 on Dec 14, 2022
  37. vijaydasmp referenced this in commit 959415c9a1 on Dec 14, 2022
  38. vijaydasmp referenced this in commit cbc605a535 on Dec 18, 2022
  39. vijaydasmp referenced this in commit abb3bacd8e on Dec 22, 2022
  40. vijaydasmp referenced this in commit e19391ca74 on Dec 30, 2022
  41. vijaydasmp referenced this in commit 9b04ee4576 on Dec 31, 2022
  42. PastaPastaPasta referenced this in commit 2660c9722b on Jan 2, 2023

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: 2024-07-05 22:12 UTC

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