-
Notifications
You must be signed in to change notification settings - Fork 758
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
Fix pyspec
hive tests
#2621
Fix pyspec
hive tests
#2621
Conversation
Codecov Report
Additional details and impacted files
Flags with carried forward coverage won't be shown. Click here to find out more. |
…r.MAX_SAFE_INTEGER
…ded newlines from file [no ci]
Current status:
Will continue tomorrow. |
Current failing:
Fix by 7cc4c0f ensures the genesis has the correct state root. However, it now complains that "block 0 is not executed", I think this is because these trie nodes of genesis are not written to disk? So VM trie has no access to it (parent state root (e.g. genesis state root) unknown to VM). (Also this is somewhat a big problem, it thus seems we cannot init a custom chain client if we provide genesis state..?) |
At commit 77287ba:
Only 2 failing. |
pyspec
hive tests
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.
LTGM - I ran the hive tests and they all passed as well.
* client: update engine-only rpc methods to be exposed by spec * common: add support for geth configs with gasLimit/difficulty > Number.MAX_SAFE_INTEGER * client: ensure if private key is unlocked, remove any accidentally added newlines from file [no ci] * blockchain: support genesis nonce [no ci] * vm/eei: also read nonce from genesis [no ci] * vm/eei: ensure empty accounts at genesis are not marked as touched [no ci] * trie: ensure checkRoot returns true in case root of empty trie is provided * vm: fix tests --------- Co-authored-by: acolytec3 <17355484+acolytec3@users.noreply.github.com>
This PR fixes the
pyspec
hive tests. These tests are tests from theexecution-spec-tests
repo and re-execute these tests, but now using the engine API of the client.No consensus bugs were found. However, some missing features and some annoying stuff has been fixed in this PR: (most of those are edge cases, except genesis files where nonce is nonzero for some accounts)
Number.MAX_SAFE_INTEGER
)gasLimit
ordifficulty
, this is parsed right by usingBigInt
Trie
that if we request if the empty state root (so 0 accounts, not even empty ones) is available, it returnstrue
(this value is not in the DB). Fixes a test which starts with empty genesis allocation.eth_
requests to port 8545 ethereum/hive#752Before this PR: fail 93/94. Current: fail 0/94
To run:
go run hive.go --docker.output --client ethereumjs --sim ethereum/pyspec