-
Notifications
You must be signed in to change notification settings - Fork 430
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 System Transactions to mainnet #6206
Conversation
…h/nethermind into system_tx_experiment
src/Nethermind/Nethermind.Runner/Properties/launchSettings.json
Outdated
Show resolved
Hide resolved
b625aa4
to
0c357ed
Compare
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.
I think splitting Transaction processors is a bad idea that will bring more harm than good.
I already see updates in main TransactionProcessor that weren't ported to the System one.
I also think that relying on parameters instead of decorators of IWolrdState/ICodeInfoRepository is also not great.
I can rework it, but first wanted to discuss my reservations and questions.
@@ -132,6 +128,8 @@ public bool IsEip158IgnoredAccount(Address address) | |||
public bool IsEip2935Enabled => _spec.IsEip2935Enabled; | |||
public bool IsEip7709Enabled => _spec.IsEip7709Enabled; | |||
public Address Eip2935ContractAddress => _spec.Eip2935ContractAddress; | |||
|
|||
public bool AuRaSystemCalls => false; |
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.
shouldn't this be _spec.AuRaSystemCalls
?
{ | ||
throw new InvalidOperationException("Updating balance of a non-existing account"); | ||
} | ||
stateProvider.SubtractFromBalance(address, balanceChange, releaseSpec); |
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.
This could still underflow?
@@ -256,10 +258,7 @@ private void ValidateProcessedBlock(Block suggestedBlock, ProcessingOptions opti | |||
ReceiptsTracer.SetOtherTracer(blockTracer); | |||
ReceiptsTracer.StartNewBlockTrace(block); | |||
|
|||
_beaconBlockRootHandler.ApplyContractStateChanges(block, spec, _stateProvider); | |||
_blockhashStore.ApplyBlockhashStateChanges(block.Header); |
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.
Is blockhash store also migrated to system calls?
closing in favor of #7252 |
Fixes Closes Resolves #
Please choose one of the keywords above to refer to the issue this PR solves followed by the issue number (e.g. Fixes #000). If no issue number, remove the line. Also, remove everything marked optional that is not applicable. Remove this note after reading.
Changes
Types of changes
What types of changes does your code introduce?
Testing
Requires testing
If yes, did you write tests?
Notes on testing
Optional. Remove if not applicable.
Documentation
Requires documentation update
If yes, link the PR to the docs update or the issue with the details labeled
docs
. Remove if not applicable.Requires explanation in Release Notes
If yes, fill in the details here. Remove if not applicable.
Remarks
Optional. Remove if not applicable.