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

svm: allow conflicting transactions in entries #2702

Draft
wants to merge 45 commits into
base: master
Choose a base branch
from

Conversation

2501babe
Copy link
Member

@2501babe 2501babe commented Aug 22, 2024

(still under dev, new branch because reimplementing was easier than rebasing on latest changes)

Problem

Summary of Changes

Fixes #

@Huzaifa696
Copy link

Huzaifa696 commented Sep 25, 2024

Hi @2501babe, We met with Andrew at Breakpoint and he mentioned that you are working on SIMD#83 related PRs.

We did a quick review of this PR. I have also pushed a set of PRs to enable SIMD#83 and your work looks very similar to what is done already here PR1 PR2 PR3. Please take a look and I hope you will find them quite useful.

Glad to contribute / help out with SIMD#83 related stuff.

@2501babe
Copy link
Member Author

hi! first off, really appreciate your desire to contribute to SIMD83

i looked through your PR1 code a bit before starting on this, but unfortunately concluded i wasnt able to use your code as-written. the way accounts are handled in svm has a lot of very nasty edge cases, especially since fee-only transactions were added, and i felt like i needed to start from scratch to make sure i had a full understanding of the flow

hoping we might be able to collaborate on the account locking changes, which i expect to be a lot more straightforward. ill review PR2 before i start on that and let you know what i think

@2501babe 2501babe force-pushed the 20240822_svmconflicts_attempt3 branch from d31fa3e to bc676d4 Compare September 26, 2024 06:19
@Huzaifa696
Copy link

Sure, we'll look forward to discussing PR2. A question about PR3.

It is related to the replay side. According to v2.1.0 release notes ryoqan's unified scheduler path will become default and we know it already implements SIMD#83.

Our PR3 implements implements SIMD#83 in replay for the BlockstoreProcessor path.

Do you know if the BlockstoreProcessor path will also be updated to support SIMD#83?

@2501babe
Copy link
Member Author

i believe the idea is that we want simd83 support for the existing scheduler so that validators can continue to use it if they prefer, as far as i know we arent removing it, and once we start making simd83 blocks, everyone will need to be able to replay them even if they dont produce them. however you might want to double-check with andrew to be sure

@2501babe 2501babe force-pushed the 20240822_svmconflicts_attempt3 branch 3 times, most recently from e595ac4 to cb1e67f Compare October 1, 2024 14:23
@2501babe 2501babe force-pushed the 20240822_svmconflicts_attempt3 branch 2 times, most recently from c5f35c7 to 0379982 Compare October 2, 2024 12:42
@2501babe 2501babe force-pushed the 20240822_svmconflicts_attempt3 branch from 0379982 to 65b8418 Compare October 2, 2024 12:54
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.

2 participants