-
Notifications
You must be signed in to change notification settings - Fork 106
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
Zebra's block template can contain duplicate transactions #5982
Comments
Zebra's logs say:
The full script logs are:
template-getblocktemplate-template.json contains:
proposal-data.CurTime.json contains:
proposal-data.CurTime.debug contains:
|
@mpguerra can we schedule this fix in this sprint, it is blocking further testing? (We can test for other bugs, but we can't be sure we've found them all until this one is fixed.) |
Hey team! Please add your planning poker estimate with Zenhub @arya2 @conradoplg @dconnolly @oxarbitrage @teor2345 @upbqdn |
@arya2 unfortunately the PR was merged before the planning poker result was set. Can you please add an estimate here? |
Motivation
When I use
zebra-utils/zcash-rpc-block-template-to-proposal
from PR #5944 to send a block proposal from Zebra to bothzcashd
and Zebra, I see these errors in Zebra's block template:The template in template-getblocktemplate-template.json contains two copies of transaction
f7b68748b40a49bf7cb0ce8b9565a29bfd65cd917c68d0ee18feaf2614055608
. This is incorrect and breaks a consensus rule.Both Zebra and
zcashd
agree that this block proposal is invalid.This bug is a blocker for mining pools using Zebra, because it produces invalid blocks.
Specifications
Duplicate transactions are invalid because of the consensus rules that prevent:
Complex Code or Requirements
It is difficult to reproduce this bug, because it depends on the mempool's state at the time, and the chain tips of both nodes.
But the bug isn't happening due to a chain fork or a concurrent block commit, that would be a previous block hash error.
Testing
We might need to re-test with the same script a few times to reproduce this error, and make sure it is gone.
Tasks
The text was updated successfully, but these errors were encountered: