HAOYUatHZ
2f9edf73ca
feat(rollup): add circuits capacity checker ( #321 )
...
* add proof for predeployed storages
* reverse inneeded code
* update for mainbranch merging
* add pertx storage trace
* dummy tx proof
* add txstorage trace
* add coinbase storage as trace
* enable (sync) tracing by default
* basic
* init cgo framework
* fix break loop
* integrate the right zkevm version (#323 )
* finish rust codes
* use dylib (#325 )
* flip
* ?
* use cdylib
* revert
* fix
* apply_tx
* rename
* fixing types
fixing types
fixing types
* clean up
* ExecutionResults (#328 )
* filling
* filling
* more
* clean up
* filling
* coinbase
* add
* MPTWitness
* ExecutionResults WIP
* L1fee
L1fee
* sender
* to
* Failed & ReturnValue
* createdAcc & after
* remove MPTWitness
* txStorageTrace
* add FeeRecipient
* add StorageTrace
* fix FFI types
* better logger
* cargo fmt
* fix
* add build tags
* update Makefile
* fix library
* improve ld path
* correctly deal with circuit_capacity_checker returned result
* fix return value
* update cargo (#333 )
* update cargo
* update
* update go
* refactor
* raname `circuits capacity checker` to `circuit capacity checker`
* some refactorings
* [Fix] storage proof generation in capacity checker (#348 )
* make per-tx storage and deletion proof work
* format
* fix misplaced markdeletion
---------
Co-authored-by: HAOYUatHZ <haoyu@protonmail.com>
* docker (#363 )
* update Dockerfile
* build: update go version to 1.19
* update
* fix
* fix
* try
* simplify
* revert go version
update l2geth Dockerfiles
* fix
* fix coinbase
* fix (#369 )
* format
* Update version.go
* address comments
* Capacity refactor (#374 )
* init
* id
* support multiple instances
* fix id
* fix conflicts
* refactor to use same codes (#379 )
* re-init
* WIP
* WIP
* refactor
* go
* minor
* fix storage proof of l1gas price oracle
* move 1
* move 2
* move 3
* move 4
* move 5
move 5
* move 6
move 6
* move 7
* move 8
* move 9
* move 10
* clean up
clean up
---------
Co-authored-by: Ho Vei <noelwei@gmail.com>
* finish basic
* minor
* config capacity check in block_validator (#380 )
* init
* done
ref
* fix tests
fix tests
fix tests
fix tests
* add more comments
* apply_block
* improve logs
* cargo fmt
* Capacity big refactor (#383 )
* CreateTraceEnv
* WIP
* draft
more
fix
* for test
* fortet
* clean up
* add more comments
* goimports -local github.com/scroll-tech/go-ethereum -w .
* fix typos
* attempt 1
* attempt 2
* attempt 3
* gogogo
* clean up
* fix
* fix
* rename
* minor
* fix
* minor
* minor
* improve doc
* use dedicated `checkCircuitCapacity` flag (#394 )
* refactor
* fix
* add lock
* [feat] capacity checking: upgrade libzkp (#395 )
* upgrade
* upgrade libzkp
* write RowConsumption (#396 )
* write RowConsumption
* name alignments
* revert some formatting
* add lock to CircuitCapacityChecker in BlockValidator
* remove mutex pointer
* improve github workflow
* improve
* store row consumption in mining (#397 )
* prepare
* finish
* add more logs
* mark `ApplyBlock` as ready
* update libzkp (#401 )
* fix
* Capacity detail (#402 )
* fix(block-validation): consider skipping in ValidateL1Messages (#405 )
* fix(block-validation): consider skipping in ValidateL1Messages
* fix(block): consider skipping in L1MessageCount
* fix l1 validation tests
* fix NumL1Messages
* fix impl.go return types
fix
* better error handling (#407 )
* add
add
* add
* add
* add
* add
* cargo fmt
* add
* update
* add
* WIP
* minor
* gogogo
* gogogo
* fix
* fix
* fix
* cargo clippy
* improve
* improve
* creation lock (#408 )
* creation lock
* update
* Debug log (#409 )
* add more logs
* more
* more
* fix
* improve
* Update cmd/utils/flags.go
Co-authored-by: Péter Garamvölgyi <peter@scroll.io>
* refactor worker.commit()
* avoid re-calculate
* txpool ccc err handling (#411 )
* more explicit error comments
* add more logs
* fix unnecessary commit
* add more logs
* fix `ineffassign`
* add more comments
* log id for `NewCircuitCapacityChecker` (#414 )
add log to `NewCircuitCapacityChecker`
* Persist skip info for block where all L1 msgs are skipped (#415 )
persist skip info for block where all L1 msgs are skipped
* Update version.go
---------
Co-authored-by: Ho Vei <noelwei@gmail.com>
Co-authored-by: Zhang Zhuo <mycinbrin@gmail.com>
Co-authored-by: Péter Garamvölgyi <peter@scroll.io>
2023-08-01 13:52:31 +08:00
Péter Garamvölgyi
49e755e334
Add Scroll bootnode config ( #261 )
...
* add Scroll bootnode config
* expose scroll networks on node CLI
* add alpha genesis config
* fix scroll genesis config
* update default sync mode
* address todos
* remove scroll staging network
* bump version
* update genesis config
* bump version
2023-04-19 04:40:52 +02:00
maskpp
15391eeaf7
feat: add replay blockResult API ( #139 )
...
* replay trace
* replay trace
* add sdk
* fix trace test case
* fix bug
* Update eth/tracers/api_blockResult.go
Co-authored-by: Haichen Shen <shenhaichen@gmail.com>
* Update eth/tracers/api_blockResult.go
Co-authored-by: Haichen Shen <shenhaichen@gmail.com>
* Update eth/tracers/api_blockResult.go
Co-authored-by: Haichen Shen <shenhaichen@gmail.com>
* Update eth/tracers/api_blockResult.go
Co-authored-by: Haichen Shen <shenhaichen@gmail.com>
* add comments
* fail the rpc call if get error
* adjust channel length
* fix bug
* fix bug
* remove redundant codes in worker
* add test case
* fix bug
* fix goimports
* Update eth/tracers/api_blockResult.go
Co-authored-by: HAOYUatHZ <37070449+HAOYUatHZ@users.noreply.github.com>
* fix comments
* Update ethclient/ethclient.go
Co-authored-by: Haichen Shen <shenhaichen@gmail.com>
* Update ethclient/ethclient.go
Co-authored-by: Haichen Shen <shenhaichen@gmail.com>
* rm coinbase api in miner
* fix comment
* Update eth/tracers/api.go
Co-authored-by: Haichen Shen <shenhaichen@gmail.com>
* fix comment
Co-authored-by: HAOYUatHZ <37070449+HAOYUatHZ@users.noreply.github.com>
Co-authored-by: Haichen Shen <shenhaichen@gmail.com>
2022-09-20 14:30:57 +08:00
Ho
3682e05f3f
zktrie part3: include zktrie witness in block trace; add demo for generating witness data for mpt circuit ( #123 )
...
* demo for witness generator
* add simple binary for witness generating
* revert the witgen utility
* purge some code
* induce mptwitness argument
* handle case for failed tx, and special block in POA
* mptwitness: refactor for enabling output ops with different order
* induce witness gen with rwtable order
* self-documenting options for mptwitness
* fix trace flag according to review
* fix issue in handling failed tx
* refactor
* update according to reviews
Co-authored-by: HAOYUatHZ <haoyu@protonmail.com>
2022-07-16 07:00:07 +08:00
maskpp
0541145fd6
feat: add config for blockResult cache_limit ( #97 )
...
* Let blockResult limit settable
* fix bug
* Update cmd/geth/usage.go
Co-authored-by: HAOYUatHZ <37070449+HAOYUatHZ@users.noreply.github.com>
Co-authored-by: HAOYUatHZ <37070449+HAOYUatHZ@users.noreply.github.com>
2022-05-16 18:41:40 +08:00
Jules
de7ed6af40
Update mod file and all imports to use scroll-tech URL ( #15 )
...
* Update mod file and all imports to use scroll-tech URL
Fixes #14
* Update Discord link
2021-12-24 10:59:22 +01:00
Martin Holst Swende
32150f8aa9
cmd/geth, cmd/evm, params: implement Arrow Glacier (EIP 4345) ( #23810 )
...
This PR adds support for ArrowGlacier, as defined by
https://github.com/ethereum/execution-specs/blob/master/network-upgrades/mainnet-upgrades/arrow-glacier.md
https://eips.ethereum.org/EIPS/eip-4345
> Starting with FORK_BLOCK_NUMBER the client will calculate the difficulty based on a fake block number suggesting to the client that the difficulty bomb is adjusting 10,700,000 blocks later than the actual block number.
This also adds support for evm t8n to return the calculated difficulty, so it can be used to construct test.
2021-10-28 22:18:14 +02:00
noam-alchemy
633e7ef478
eth,rpc: allow for flag configured timeouts for eth_call ( #23645 )
...
* eth,rpc: allow for flag configured timeouts for eth_call
* lint: account for package-local import order
* cr: rename `rpc.calltimeout` to `rpc.evmtimeout`
2021-10-12 10:46:04 +02:00
Felföldi Zsolt
f38abc55f1
eth/gasprice: feeHistory improvements ( #23422 )
...
* eth/gasprice: cache feeHistory results
* eth/gasprice: changed feeHistory block count limitation
* eth/gasprice: do not use embedded struct in blockFees
* eth/gasprice: fee processing logic cleanup
* eth/gasprice: purge feeHistory cache at chain reorgs
2021-08-23 23:50:24 +02:00
gary rong
6d175460df
cmd, core, eth, miner: deprecate miner.gastarget flag ( #23213 )
2021-08-10 11:28:33 +03:00
Sina Mahmoodi
5441a8fa47
all: remove noop vm config flags ( #23111 )
...
* all: rm external interpreter and ewasm config
* core/vm: rm Interpreter interface
* cmd/geth: deprecate interpreter config fields
2021-07-06 22:03:09 +02:00
ucwong
3b05318525
cmd/evm, eth/ethconfig: regenerate struct codecs ( #23140 )
2021-07-02 11:08:53 +02:00
Felföldi Zsolt
35dbf7a8a3
eth/gasprice: implement feeHistory API ( #23033 )
...
* eth/gasprice: implement feeHistory API
* eth/gasprice: factored out resolveBlockRange
* eth/gasprice: add sanity check for missing block
* eth/gasprice: fetch actual gas used from receipts
* miner, eth/gasprice: add PendingBlockAndReceipts
* internal/ethapi: use hexutil.Big
* eth/gasprice: return error when requesting beyond head block
* eth/gasprice: fixed tests and return errors correctly
* eth/gasprice: rename receiver name
* eth/gasprice: return directly if blockCount == 0
Co-authored-by: rjl493456442 <garyrong0905@gmail.com>
2021-06-28 16:16:32 +02:00
Péter Szilágyi
be1267ced5
eth/ethconfig: bump the RPC gas cap to 50M, since 1559 exceeds 25
2021-06-10 09:07:03 +03:00
Péter Szilágyi
9aaa4208a8
eth/ethconfig: flip the default from fast to snap sync
2021-05-31 10:21:48 +03:00
Ryan Schneider
ca98080798
cmd/geth, eth/gasprice: add configurable threshold to gas price oracle ( #22752 )
...
This adds a cmd line parameter `--gpo.ignoreprice`, to make the gas price oracle ignore transactions below the given threshold.
2021-05-11 11:25:51 +02:00
Martin Holst Swende
cc606be74c
all: define London+baikal, undefine yolov3, add london override flag ( #22822 )
...
* all: define London+baikal, undefine yolov3, add london override flag
* cmd, core, params: add baikal genesis definition
2021-05-06 12:07:42 +03:00
Felix Lange
cae6b5527e
cmd/geth, consensus/ethash: add support for --miner.notify.full flag ( #22558 )
...
The PR implements the --miner.notify.full flag that enables full pending block
notifications. When this flag is used, the block notifications sent to mining
endpoints contain the complete block header JSON instead of a work package
array.
Co-authored-by: AlexSSD7 <alexandersadovskyi7@protonmail.com>
Co-authored-by: Martin Holst Swende <martin@swende.se>
2021-03-26 18:30:10 +01:00
Marius van der Wijden
54c0d573d7
eth: dump rpc gas cap and tx fee cap ( #22574 )
2021-03-25 16:37:51 +02:00
Péter Szilágyi
0928562670
all: define Berlin hard fork spec
2021-02-26 14:24:07 +02:00
gary rong
378e961d85
cmd, eth, les: enable serving light clients when non-synced ( #22250 )
...
This PR adds a more CLI flag, so that the les-server can serve light clients even the local node is not synced yet.
This functionality is needed in some testing environments(e.g. hive). After launching the les server, no more blocks will be imported so the node is always marked as "non-synced".
2021-02-25 13:55:07 +01:00
Péter Szilágyi
409b16e5ab
cmd/utils, eth/ethconfig: unindex txs older than ~1 year
2021-02-10 16:01:37 +02:00
gary rong
098a2b6e26
eth: move eth.Config to a common package ( #22205 )
...
This moves the eth config definition into a separate package, eth/ethconfig.
Packages eth and les can now import this common package instead of
importing eth from les, reducing dependencies.
Co-authored-by: Felix Lange <fjl@twurst.com>
2021-02-05 13:51:15 +01:00