Skip to content
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

Add remaining *2 types #3932

Merged
merged 18 commits into from
Dec 6, 2024
Merged

Add remaining *2 types #3932

merged 18 commits into from
Dec 6, 2024

Conversation

ss-es
Copy link
Contributor

@ss-es ss-es commented Dec 2, 2024

Adds the remaining new types. This includes logic for DaData2 and its associated vote/certificate, but not for any timeout or view sync types. Those require some additional changes, which are being made in #3893.

Key places to review:

The changes in task-impls are the most relevant things to review; the remaining changes are mostly boilerplate for the added types.

@ss-es ss-es marked this pull request as ready for review December 5, 2024 09:06
@ss-es ss-es requested a review from bfish713 as a code owner December 5, 2024 09:06
@ss-es ss-es assigned lukaszrzasik and pls148 and unassigned bfish713 and QuentinI Dec 5, 2024
Copy link
Contributor

@lukaszrzasik lukaszrzasik left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nothing major, just a few comments.

payload_commit: payload_commitment,
epoch: self.cur_epoch,
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It would be good to use the epoch from the proposal. Something like this

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

agreed! change: 2fed4ef

encoded_transactions: Arc::clone(encoded_transactions),
metadata: metadata.clone(),
// Upon entering a new view we want to send a DA Proposal for the next view -> Is it always the case that this is cur_view + 1?
view_number,
epoch_number: self.cur_epoch,
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is fine here because we're proposing a new block and we don't know its block number yet. We need to rely on the task keeping track of the current epoch.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

your comment led me to look at this again, and I think I fixed it "properly": 3ef6a5b

this now takes its epoch number directly from the ViewChange event that triggered the transaction request

@@ -115,18 +114,34 @@ impl<TYPES: NodeType> NetworkMessageTaskState<TYPES> {
HotShotEvent::UpgradeVoteRecv(message)
}
GeneralConsensusMessage::HighQc(qc) => HotShotEvent::HighQcRecv(qc, sender),
GeneralConsensusMessage::Proposal2(proposal) => {
HotShotEvent::QuorumProposalRecv(convert_proposal(proposal), sender)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is this conversion here necessary?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

oops. removed: 18a6c10

@pls148 pls148 self-requested a review December 5, 2024 19:35
@ss-es ss-es merged commit 6e30053 into main Dec 6, 2024
17 checks passed
@ss-es ss-es deleted the ss/vote2 branch December 6, 2024 16:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants