-
Notifications
You must be signed in to change notification settings - Fork 41
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
Patch timestamp architecture #1583
Comments
InvestigationContext needed by patchesCommon: current/nearest block numbers/timestamps ContractStorageLimitPatchUsed in CorrectForkInPowPatchUsed in:
Context needed:
POWCheckPatchUsed in:
Context needed:
PrecompiledConfigPatchUsed in:
Context needed:
RevertableFSPatchUsed in:
Can be used as Ethereum fork. SkipInvalidTransactionsPatchUsed in:
Context needed:
TotalStorageUsedPatchKeeps old broken record in DB. New one is ignored as DB hash computation Used in:
Context needed:
Uses magic transaction! TODO Modules vs activation patches |
4 types of "patches":
Stages of skaled pipeline affected by patches:
TODO Lost patches in *.cpp; Consensus gets patches too! |
Notes on current patches:
|
Where latestBlockTimestamp is available:
|
Tests for patches:
|
Subtask #1846 |
skaled: 3.19.0-beta.0 |
Verified on regression network skalenetwork/schain:3.19.0-beta.1
|
Need to create some smart solution for backward compatibility: when schain is upgraded to new skaled version, this version should at first work as previous one - and after all have been upgraded - start to work in a new way. Currently, we use ContractStorageZeroValuePatch, ContractStorageZeroValuePatch etc. Probably we need "magic transaction" solution.
Tasks
The text was updated successfully, but these errors were encountered: