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

vms/platformvm: Verify txs before building a block #2359

Merged
merged 123 commits into from
Dec 12, 2023

Conversation

dhrubabasu
Copy link
Contributor

@dhrubabasu dhrubabasu commented Nov 22, 2023

Why this should be merged

This PR changes the block building process to verify the txs against each other before putting them into a block. This makes it impossible to build an invalid block.

How this works

Copy over relevant block verification code to build a txDiff to verify against. Drop any transactions that fail this process.

How this was tested

CI

@dhrubabasu dhrubabasu changed the title wip vms/platformvm: Refactor block building Nov 27, 2023
@dhrubabasu dhrubabasu self-assigned this Nov 27, 2023
@dhrubabasu dhrubabasu added the cleanup Code quality improvement label Nov 27, 2023
Base automatically changed from surface-verify-unique-inputs to dev December 12, 2023 00:23
vms/platformvm/block/builder/builder.go Outdated Show resolved Hide resolved
vms/platformvm/block/builder/builder.go Outdated Show resolved Hide resolved
vms/platformvm/block/builder/builder.go Outdated Show resolved Hide resolved
vms/platformvm/block/builder/builder.go Outdated Show resolved Hide resolved
vms/platformvm/txs/mempool/mempool.go Show resolved Hide resolved
vms/platformvm/block/builder/builder.go Show resolved Hide resolved
@dhrubabasu dhrubabasu changed the base branch from dev to TestBuildBlockForceAdvanceTime December 12, 2023 10:09
Base automatically changed from TestBuildBlockForceAdvanceTime to dev December 12, 2023 20:00
@StephenButtolph StephenButtolph added this pull request to the merge queue Dec 12, 2023
Merged via the queue into dev with commit 0b2b109 Dec 12, 2023
16 checks passed
@StephenButtolph StephenButtolph deleted the p-block-build-refactor branch December 12, 2023 22:11
joshua-kim added a commit that referenced this pull request Dec 13, 2023
commit 82fbc97
Author: Stephen Buttolph <[email protected]>
Date:   Tue Dec 12 18:30:09 2023 -0500

    Add ACP signaling (#2476)

commit ac5a00e
Author: Joshua Kim <[email protected]>
Date:   Tue Dec 12 17:42:32 2023 -0500

    Refactor p2p unit tests (#2475)

    Signed-off-by: Joshua Kim <[email protected]>
    Co-authored-by: Dan Laine <[email protected]>

commit 0b2b109
Author: Dhruba Basu <[email protected]>
Date:   Tue Dec 12 16:48:28 2023 -0500

    `vms/platformvm`: Verify txs before building a block (#2359)

    Co-authored-by: Stephen Buttolph <[email protected]>

commit 4be744e
Author: Joshua Kim <[email protected]>
Date:   Tue Dec 12 15:08:48 2023 -0500

    P2P AppError handling (#2248)

    Signed-off-by: Joshua Kim <[email protected]>
    Co-authored-by: Stephen Buttolph <[email protected]>

commit 7963115
Author: Dhruba Basu <[email protected]>
Date:   Tue Dec 12 14:37:59 2023 -0500

    `vms/platformvm`: Add `TestBuildBlockForceAdvanceTime` test (#2472)

    Co-authored-by: Stephen Buttolph <[email protected]>

commit dc472ec
Author: Dhruba Basu <[email protected]>
Date:   Tue Dec 12 14:37:43 2023 -0500

    `vms/platformvm`: Permit usage of the `Transactions` field in `BanffProposalBlock` (#2451)

    Co-authored-by: Stephen Buttolph <[email protected]>

Signed-off-by: Joshua Kim <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
cleanup Code quality improvement
Projects
Archived in project
Development

Successfully merging this pull request may close these issues.

4 participants