-
Notifications
You must be signed in to change notification settings - Fork 2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
remove the block fill rate limit of 70% when farming a block #19005
base: main
Are you sure you want to change the base?
Conversation
Pull Request Test Coverage Report for Build 12281997874Warning: This coverage report may be inaccurate.This pull request's base commit is no longer the HEAD commit of its target branch. This means it includes changes from outside the original pull request, including, potentially, unrelated coverage changes.
Details
💛 - Coveralls |
@@ -1081,7 +1081,7 @@ async def make_and_send_big_cost_sb(coin: Coin) -> None: | |||
g1 = sk.get_g1() | |||
sig = AugSchemeMPL.sign(sk, IDENTITY_PUZZLE_HASH, g1) | |||
aggsig = G2Element() | |||
for _ in range(169): | |||
for _ in range(242): |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
do you want to comment what this magic number is
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
yeah, it's not great. it's the number of transactions we need to fill the mempool sufficiently to trigger the expected number of rejections. going from fill rate 70% -> 100%, I simply took 169 / 0.7 to increase this number proportionally. I'll try to improve this a bit.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Sent #19026 as an attempt to clarify this.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think I might prefer the simpler construct with a comment like Amine has above. The latest version here Arvid has more magic numbers :-)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think magic numbers are "more magic" the harder they are to explain. And breaking this down to how the magic number is computed makes the new ones less magical. (and I think in the most recent update there no magic numbers). As long as you accept that the CLVM cost of returning a quoted list is 44 and that it takes 88 bytes to serialize another agg-sig condition.
There are a lot of mempool tests with magic number that need tweaking when tweaking constants. Now we're moving this test to have its expectations properly rooted in the test constants it's using. I think this really helps humans understand (and gain confidence in) the test. I will follow up (in a separate PR) to make sure this test
…_big_cost_sb (#19026) Attempt to clarify why we add many aggsig conditions in make_and_send_big_cost_sb.
Purpose:
to increase transaction rate
Current Behavior:
Farmers only fill blocks to 70% full
New Behavior:
Farmers fill blocks all the way. But blocks are compressed and have potential to fit more transactions.
Testing Notes: