-
Notifications
You must be signed in to change notification settings - Fork 677
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
Disable Microblocks in Epoch 2.5 #4561
Conversation
8a121ff
to
1c1aac9
Compare
1c1aac9
to
4c1b5c5
Compare
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## next #4561 +/- ##
==========================================
- Coverage 83.35% 83.35% -0.01%
==========================================
Files 453 454 +1
Lines 328491 328792 +301
Branches 323 323
==========================================
+ Hits 273822 274072 +250
- Misses 54661 54712 +51
Partials 8 8
... and 19 files with indirect coverage changes Continue to review full report in Codecov by Sentry.
|
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.
The code overall LGTM, so I'll approve for now. However, I think we'll also want to update the mempool admission logic to reject microblock-only transactions at epoch 2.5. That can be a separate PR if you want
Yep -- we would probably also want to update the microblock downloading logic to reject microblocks after Epoch 2.5, but like the mempool changes, since those are not consensus critical, I'd prefer to handle them in a follow on PR. |
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.
LGTM. My only thought was about the mempool rejection for transactions after 2.5 with the wrong anchor mode, but I see that was already discussed.
This pull request has been automatically locked since there has not been any recent activity after it was closed. Please open a new issue for related bugs. |
Description
This PR disables microblock production and confirmation in Epoch 2.5 and will reject any blocks that attempt to confirm microblocks in Epoch 2.5 and beyond.
This is tested with a new integration test that first mines some blocks in Epoch 2.5 with a microblock only tx in the mempool, asserting that the transaction does not get confirmed and no new microblocks are produced. It then sets a test only flag which tells the miner to mine microblocks in 2.5 anyways, and asserts that the microblocks are produced but never confirmed. Finally, it sets another flag which tells the miner to confirm microblocks in 2.5 anyways, and asserts that the miner's blocks are no longer accepted.
Applicable issues
#4479