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

[CX_CLEANUP] - Obtain VID Payload Size During Validation #2744

Closed
Tracked by #3265
jparr721 opened this issue Mar 11, 2024 · 2 comments · Fixed by #3066
Closed
Tracked by #3265

[CX_CLEANUP] - Obtain VID Payload Size During Validation #2744

jparr721 opened this issue Mar 11, 2024 · 2 comments · Fixed by #3066

Comments

@jparr721
Copy link
Contributor

What is this task and why do we need to work on it?

We plan to enforce a base fee per byte. To do this, we need to know the size of the proposed payload during validation (also in Header::new where the fee info gets proposed). So we need to pass VidCommon into the block trait functions. This means that in the consensus task, we can't call validate_and_apply_header until we have received the VID dispersal, so that call would have to get moved into vote_if_able, which is a pretty significant logic change.

After the voting dependancies are collected we'll know that we have the VID information and can do all our validation. Also it will mean we won't be running the validated_and_apply_header logic which is blocking on the main consensus task.

As part of the refactoring efforts to the vote_if_able function, we need to support the ability to make this data available for calculation purposes.

What work will need to be done to complete this task?

No response

Are there any other details to include?

No response

What are the acceptance criteria to close this issue?

Tests to ensure that the requisite information is indeed available.

Branch work will be merged to (if not the default branch)

No response

@ggutoski
Copy link
Contributor

Ugh. I don't fully understand this issue but wonder whether it's related to EspressoSystems/jellyfish#561 (comment). Seems there are a few places where we need things like payload_byte_len or num_storage_nodes before we have a VidCommon to tell us these things.

@jbearer
Copy link
Member

jbearer commented Apr 24, 2024

Since we need this soon for Cappuccino, @bfish713 will integrate it into the current logic. Later @jparr721 will incorporate into the refactored logic

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

5 participants