-
Notifications
You must be signed in to change notification settings - Fork 114
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
Step 2: kernel integration (migrate functionality to fvm) #778
Conversation
* Zcash project team. | ||
* Bitcoinj team. | ||
*/ | ||
|
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.
license header should be removed
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.
Looks good other than the headers.
*/ | ||
ImportResult tryToConnectInternal(final AionBlock block, long currTimeSeconds) { | ||
// TEMPORARY: here to support the ConsensusTest | ||
public Pair<ImportResult, AionBlockSummary> tryToConnectAndFetchSummary(AionBlock block, long currTimeSeconds) { |
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.
Let's make a note/Issue/Jira to re-visit this once the critical code has been merged in
@@ -0,0 +1,39 @@ | |||
/* |
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.
unnecessary headr
- The following classes were moved: TransactionExecutor, AbstractExecutor, FastVmResultCode and FastVmTransactionResult. - This is a step on the way towards achieving the correct dependency relationship between modVM, modFastVM and modPrecompiled.
- As well as its two subclasses - these all existed as a means of injecting the fastvm & precompiled depencies into modVM to get around the dependency inversion going on here. This is now done with.
- IPrecompiledContract is now PrecompiledContract and is now in modPrecompiled. IContractFactory is removed. ExecutionContext and SideEffects have been moved from modVM into the fvm.
- Though it is far from its final place. It is merely here so that the modVM, FastVM, modPrecompiled modules all have their dependencies solved. - Now BulkExecutor in modVM sees FastVM instead of the other way round. - The fastVM and modPrecompiled modules no longer depend on modVM.
- This test checks against only a very basic case, that none of the fundamental results required for network consensus are broken by any changes we are doing.
103c613
to
349f72f
Compare
Step 2 in the kernel integration.
This PR mostly moves classes from the kernel into the fast vm.
A consensus test has been added to check some basic hard-coded hash values that we must also produce to not break consensus. This test will be updated as we go on.