* Revert "evm t8n tool to use ExecuteBlockEphemerally api (#4512)"
This reverts commit db93d2ea37.
* Fix compilation
Co-authored-by: Alex Sharp <alexsharp@Alexs-MacBook-Pro.local>
* reconstitution
* Add history access without state function
* More on state reconstitution
* More on state recon
* More on state recon
* More
* More
* support dao fork
* More on state reconstitution
* Update to erigon-lib
* More
* Added genesis block and filling with history
* update
* Genesis works
* Start on parallel
* Preparation for parallel reconstitution, stats for EfSearch
* continue with parallel work
* Fix history reader
* Remove time measurements
* Fixes
* Fixes and UX improvements
* Fixes
* More tracing
* More fixes
* More fixes
* Fix code size
* Update to latest erigon-lib
* Fix for dao fork
* Remove hacks
* Update to erigon-lib, fix lint
Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
Co-authored-by: Alex Sharp <alexsharp@Alexs-MacBook-Pro.local>
* fix to set V, R, S in legacy transaction
* fix to dump post-execution alloc for evm t8n
* close tx in evm t8n
* populate current difficulty and gas used in output result
- update the ExecutionResult to include corresponding info (like
Difficulty/GasUsed)
* initial attempt at migrating 'evm t8n' to use ExecuteBlockEphemerally
* using ExecutionResult in ExecuteBlockEphemerally
* bypass validations and integrate with EphemeralExecResult
* fixing output of 'evm t8n'
- remaining bits are "stateRoot" in results.txt and "balance" field for one account in
alloc.txt (for testdata=1)
* get ExecuteBlockEphemerally to accept getTracer lambda
* fix build failure
* test cases for evm t8n
* more test cases for evm t8n
* fix stateRoot computation in evm t8n
* remove reward argument, as EBE itself takes care of it
* final cleanups for migration to using ExecuteBlockEphemerally
* change EBEforBSC to match EBE
* fix linter issues
* manually revert an unwanted diff
* avoid calculating ReceiptHash twice
* linter check
* minor correction
* remove unnecessary logic in EBEforBsc
Reduce the likelihood of a deadlock caused by goroutine starvation on CI.
The CI macOS runners have 3 cores.
When running other tests in parallel having too few available cores could cause a deadlock.
Test with:
GOMAXPROCS=2 go test ./cmd/rpcdaemon/commands/eth_subscribe_test.go -test.count 100 --timeout 10s
Expected: the command finishes within 3 sec
Before the fix: it timeouts (without a timeout - hangs forever)
* Patch plumbing of docker-compose UID/GID build args
* Fallback to 1000/1000 if DOCKER_(U|G)ID not set
* Revise README.md instructions for docker further
* Fix existing typo forc 'servie' -> 'service'
* Rename PUID/GUID -> UID/GID
* Specify user in erigon docker service
* Rely on .env instead of specifying :-1000
* Polish Makefile for docker use case
* one more helpful comment
* make docker should use UID/GID --build-arg
* Fix make docker and more fail-fast if envvar set incorrect
* mv .env->.env.example to not intefere existing workflows
* Specify envvars in docker CI
* Adjust validate_docker_build_args to permit non-erigon user
* Also run docker CI target on macos-11 os
* Add DOCKER_UID, DOCKER_GID in hooks/build
* Patch docker build arg validation for macos
* Add actions-setup-docker@master for macos
* Don't run automated test for docker macos
* Cleanup Makefile
* Comments, targets for erigon users
* More Makefile cleanup, debugging still
* Typo fix
* Create subdirs before calling ls
* Get rid of flaky validation
* DOCKER_UID, DOCKER_GID init to runner if not set
* Get rid of unnecessary variable for now
* Improved README based on new changes
* Proper uid/gid `make user_*` when no envars set
* Fix typo in Makefile comment
* Fix make docker as sudo user
* Configure consensus engine with context of stage if engine will do async work
* Change API to make setting of context for AsyncEngine multithreaded-safe
* Ensure lock gets inherited by reference
* Fix linter errors