-
-
Notifications
You must be signed in to change notification settings - Fork 290
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
gossip attestation validation: handle no committee error #4589
Conversation
Performance Report✔️ no performance regression detected Full benchmark results
|
I think the error is happening when a node hasn't been getting blocks for an epoch, but manages to publish an attestation the next epoch. Eg: node last received block in epoch 1, publishes an attestation in epoch 3. In order to process the attestation, we could use But I don't think we should just reject, since this may be a valid attestation. |
yeah that's exactly what we did in the past, there's a performance concern with it as we may need extra epoch transition just to process an attestation, and we changed to just use the state at block which make our node more stable. The main point for this issue is just for the log
agree, we should not reject, I'll change to ignore (same behaviour to earlier too) |
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.
Instead of adding a try / catch would prefer to make getShufflingAtEpoch or a separate function return null if out of range. Then the validation code can throw the error directly if returned value is null
Motivation
When an attestation came from an out of synced node, our logs look like:
Two issues here:
IGNORE
instead ofREJECT
Description
REJECT
to gossipsubCloses #4396