DongXi Huang
d537451863
refactor(evm): Remove duplicate defined variables ( #559 )
...
Refactor: Remove duplicate defined variables
2023-11-12 14:17:37 +01:00
colin
441212200a
feat(rollup): sync finalized batches from L1 ( #515 )
...
* feat(rollup): sync finalized batches from L1
* tweak
* address comments
* address comments
* tweak
* address comments
* Update rollup/eventwatcher/eventwatcher.go
Co-authored-by: Péter Garamvölgyi <peter@scroll.io>
* address comments
* address comments
* address comments
* add s.rollupSyncService.Stop()
* add block chunk batch tests
* fix goimports-lint
* address comments
* address comments
* remove
* add TestUnpackLog test
* add decodeChunkRanges tests
* add commit batch version check
* fix goimport & golint
* tweak
* fixes
* add TestRollupSyncServiceStartAndStop
* add TestGetChunkRanges
* address comments
* add TestValidateBatch
* add TestCalculateFinalizedBatchMeta
* address comments
* address comments
* fix
* address comments
* address comments
* fix
* tweak log
* fix
* tweak logs
* increase wait time
* add --rollup.verify flag
* add flag check in s.rollupSyncService.Stop()
* bump version
* refactor
* tweak configs
* tweak
* refactor getLocalInfoForBatch
* use syscall.Kill(os.Getpid(), syscall.SIGTERM) to shutdown
* refactor decodeChunkBlockRanges
* nit
* address comments
* address comments
* add WithdrawRoot and StateRoot in FinalizedBatchMeta
* address comments
* address comments
* add ctx.Err() check in retry
* add configs in gen_config.go
* bump version
* fix goimport & golint
* try to fix goimport
* revert change
* fix goimport & golint
* tweak
* bump version
* add l2 block -> batch index mapping
* bump version
* add mainnet config
* bump version
* address comments
* rename some vars
* feat: add more detailed logs in crash case (#547 )
add more detailed logs in crash case
* trigger ci
* re-add batch finalization progress log
* remove block number -> batch index mapping
---------
Co-authored-by: Péter Garamvölgyi <peter@scroll.io>
Co-authored-by: HAOYUatHZ <37070449+HAOYUatHZ@users.noreply.github.com>
2023-10-28 06:29:31 +08:00
HAOYUatHZ
fcb3e1768d
refactor(tracing): refactor wrappedProof ( #536 )
2023-10-18 00:31:29 +08:00
Péter Garamvölgyi
cfd9de0f92
feat: update network configuration ( #533 )
2023-10-08 16:03:41 +02:00
Péter Garamvölgyi
b3d0f164ea
feat: add new configuration ( #526 )
...
* add new configuration
* update
* update
* bump version
* remove todo
2023-10-08 13:29:09 +02:00
Péter Garamvölgyi
68697b0fee
fix: use non-overlapping DB prefix for L1 messages ( #532 )
...
* fix: use non-overlapping db prefix for L1 messages
* bump version
2023-10-04 19:28:26 +02:00
Péter Garamvölgyi
df41822bcf
fix: re-enable CCC light mode ( #530 )
...
fix: re-enable light mode
2023-10-04 14:01:55 +02:00
Steven
7cebee85a8
fix(libzkp): upgrade libzkp to v0.9.4 and add ccc SetLightMode ( #522 )
...
* Upgrade to prover `v0.9.4`, and add `SetLightMode` function.
* set ccc light_mode = false for validator
* fix
* bump version
---------
Co-authored-by: Zhang Zhuo <mycinbrin@gmail.com>
Co-authored-by: Péter Garamvölgyi <peter@scroll.io>
2023-10-03 15:42:54 +02:00
Péter Garamvölgyi
751dbda234
feat: add metrics in L1 message iterator ( #527 )
...
* feat: add metrics in L1 message iterator
* add L1 message size metric
2023-10-01 14:48:59 +02:00
Péter Garamvölgyi
fe8232a40f
fix(worker): short-circuit l1 message iteration ( #525 )
...
* fix(worker): short-circuit l1 message iteration
* Update core/rawdb/accessors_l1_message_test.go
Co-authored-by: colin <102356659+colinlyguo@users.noreply.github.com>
---------
Co-authored-by: colin <102356659+colinlyguo@users.noreply.github.com>
2023-09-29 21:16:37 +02:00
Péter Garamvölgyi
93a9497d75
refactor(worker): order L1 messages by queue index ( #512 )
...
* refactor(worker): order L1 messages by queue index
* bump version
* bump version
2023-09-18 10:34:51 +02:00
maskpp
417dd02827
fix(sdk): accept blocks where coinbase is null (e.g. pending block) ( #509 )
...
* fix error(when get pengding block) coinbase address is null
* fix comments
2023-09-13 17:00:17 +08:00
Péter Garamvölgyi
9c1433b62a
fix(trace): use correct roots in trace of block with one transaction ( #508 )
...
fix: use correct roots in trace of block with one transaction
2023-09-11 12:13:50 +02:00
HAOYUatHZ
dade96d416
fix(rawdb, api): fix rawdb.writeSkippedTransaction & api.GetSkippedTransaction ( #503 )
...
* fix(rawsdb): fix `writeSkippedTransaction`
* Update version.go
* minor
* clean up
2023-09-07 15:35:04 +08:00
HAOYUatHZ
0b6c3be40d
feat(api/rawdb): allow storing traces for skipped txs ( #500 )
2023-09-05 11:03:15 +08:00
Zhang Zhuo
2d9d48d463
fix(trace): record account proof for ErrContractAddressCollision ( #488 )
...
* fix(trace): record account proof for ErrContractAddressCollision
* bump version
* fix memory reading
* bump version
---------
Co-authored-by: Péter Garamvölgyi <peter@scroll.io>
Co-authored-by: HAOYUatHZ <37070449+HAOYUatHZ@users.noreply.github.com>
Co-authored-by: HAOYUatHZ <haoyu@protonmail.com>
2023-09-04 04:05:42 +00:00
Zhang Zhuo
c60fa3a643
fix(trace): fix memory trace size ( #497 )
...
* core/vm: for tracing, do not report post-op memory
* fmt
* bump version
---------
Co-authored-by: Martin Holst Swende <martin@swende.se>
Co-authored-by: Péter Garamvölgyi <peter@scroll.io>
2023-09-01 17:01:53 +08:00
Zhang Zhuo
d45613f4b5
fix(trace): more consistent invalid opcode trace ( #487 )
...
* fix: more consistent invalid opcode trace
* Update version.go
---------
Co-authored-by: HAOYUatHZ <37070449+HAOYUatHZ@users.noreply.github.com>
Co-authored-by: Péter Garamvölgyi <peter@scroll.io>
2023-08-31 15:30:22 +02:00
Zhang Zhuo
ef328dbb6e
fix(modexp): disallow len of 0x8000000000000000000000000000000000000000000… ( #496 )
...
* modexp: disallow len of 0x8000000000000000000000000000000000000000000000000000000000000000
* minor
---------
Co-authored-by: HAOYUatHZ <haoyu@protonmail.com>
2023-08-31 10:33:31 +08:00
HAOYUatHZ
ea3a3c9a5d
fix(miner): fix repeatedly processing dropped txs in a new block ( #491 )
...
* squash
* improve comments
* Remove tx (#493 )
* force drop
* minor
* store skipped L2 tx for `circuitcapacitychecker.ErrUnknown`
* Update miner/worker.go
Co-authored-by: Péter Garamvölgyi <peter@scroll.io>
* add lock
* use mu
---------
Co-authored-by: Péter Garamvölgyi <peter@scroll.io>
2023-08-30 14:38:04 +08:00
HAOYUatHZ
d650299a36
feat(miner): consider l1msg in txCount ( #486 )
...
* feat(miner): consider l1msg in txCount
* refactor
* tweak
* fix comments
* fix unit test
* set chainConfig.Scroll.MaxTxPerBlock in l1 message test
* add a skipped tx in TestAcceptableTxlimit
* add l1 skipped msg in test
* fix unit test
* fix unit test
* Update miner/worker.go
Co-authored-by: Péter Garamvölgyi <peter@scroll.io>
* revert some test changes
* tweak
* bump version
---------
Co-authored-by: colinlyguo <colinlyguo@scroll.io>
Co-authored-by: colin <102356659+colinlyguo@users.noreply.github.com>
Co-authored-by: Péter Garamvölgyi <peter@scroll.io>
2023-08-27 00:08:04 +08:00
Péter Garamvölgyi
7de261b1be
feat: store skipped transactions in local db ( #467 )
...
* feat: store skipped txs in local db
* bump version
* bump version
* fix test
* include L2 txs in skipped index
* goimports
* rename more
* bump version
* fix missed renames
* fix the bug when calculating l2TxCount. (#479 )
* fix bug when calculate l2 tx count
* Update version
* fix: exclude L1 message from block payload size validation (#476 )
* fix: exclude L1 message from block payload size validation
* fix the bug when calculating l2TxCount. (#479 )
* fix bug when calculate l2 tx count
* Update version
* bump version
---------
Co-authored-by: maskpp <maskpp266@gmail.com>
* fix: update row estimation with scroll-prover `v0.7.2` (#475 )
* Fix row estimation.
* Update libzkp.
* more
* prepare
* finish
* upgrade
* bump version
* fix tests
* Update to scroll-prover `v0.7.2`.
* fix tests
* Update miner/worker.go
Co-authored-by: Péter Garamvölgyi <peter@scroll.io>
* Update miner/worker.go
Co-authored-by: Péter Garamvölgyi <peter@scroll.io>
* Reset ccc when skips first tx.
* do not unnecessarily skip L1 message
* fix ccc reset and improve code readability
* seal block on circuitcapacitychecker.ErrUnknown
---------
Co-authored-by: HAOYUatHZ <haoyu@protonmail.com>
Co-authored-by: Péter Garamvölgyi <peter@scroll.io>
* refactor: simplify ccc revert to snapshot (#480 )
* simplify ccc revert to snapshot
* Update version.go
---------
Co-authored-by: HAOYUatHZ <37070449+HAOYUatHZ@users.noreply.github.com>
* feat: use --gcmode=archive and --cache.noprefetch=true by default (#482 )
* feat: use --gcmode=archive and --cache.noprefetch=true by default
* refuse to start with invalid config
* lint
* lint
* feat(sdk): support compressed response (#469 )
* enable use compression algorithm
* fix ci
* Just enable decode compressed content at ethclient
* fix comments
---------
Co-authored-by: Haichen Shen <shenhaichen@gmail.com>
* fix: disable pruning and prefetch if not flags are provided (#483 )
Co-authored-by: colin <102356659+colinlyguo@users.noreply.github.com>
* fix: update libzkp to use scroll-prover `v0.7.5` (#484 )
* Update libzkp to use scroll-prover `v0.7.5`.
* Update version.
* address comments
* bump version
* nit
---------
Co-authored-by: maskpp <maskpp266@gmail.com>
Co-authored-by: Steven <asongala@163.com>
Co-authored-by: HAOYUatHZ <haoyu@protonmail.com>
Co-authored-by: iczc <iczcalan@gmail.com>
Co-authored-by: HAOYUatHZ <37070449+HAOYUatHZ@users.noreply.github.com>
Co-authored-by: Haichen Shen <shenhaichen@gmail.com>
Co-authored-by: colin <102356659+colinlyguo@users.noreply.github.com>
2023-08-25 15:41:05 +02:00
Péter Garamvölgyi
727f88bc5f
fix: exclude L1 message from block payload size validation ( #476 )
...
* fix: exclude L1 message from block payload size validation
* fix the bug when calculating l2TxCount. (#479 )
* fix bug when calculate l2 tx count
* Update version
* bump version
---------
Co-authored-by: maskpp <maskpp266@gmail.com>
2023-08-23 14:06:06 +02:00
Ho
be1600f078
refactor(trace): wrap the core routine in CreateTraceEnv ( #460 )
2023-08-20 18:39:20 +08:00
Haichen Shen
e8d9d60cf0
fix: use FeeVault address in the EVM BlockContext ( #473 )
...
* fix: use Feevault address in the EVM BlockContext
* bump version
* revert format change
* fix
2023-08-19 14:01:14 +02:00
Péter Garamvölgyi
3027111956
refactor: add more context to tracing failure ( #466 )
2023-08-17 07:25:03 +02:00
maskpp
6195e2e77d
fix(trace): fix contract call's ByteCode ( #465 )
...
* fix bug
* update version
2023-08-14 18:09:39 +08:00
Péter Garamvölgyi
25fe3ba69a
feat: add startL1QueueIndex field to traces ( #463 )
...
* feat: include startL1QueueIndex in traces
* fix
* update example
2023-08-12 11:07:36 +08:00
Péter Garamvölgyi
eda99eec35
fix: skip L1 message that leads to gas limit exceeded ( #455 )
...
* skip L1 message that leads to gas limit exceeded
* add test
* do not skip l1 messages from the same account
2023-08-08 01:59:11 +02:00
HAOYUatHZ
b428fa1339
fix(trace): fix commit state when tracing ( #451 )
...
* fix(trace): fix commit state when tracing
* bump version
2023-08-07 14:15:21 +08:00
Péter Garamvölgyi
805676e227
feat: Update Sepolia genesis ( #449 )
...
update Sepolia genesis
2023-08-06 19:25:10 +02:00
Péter Garamvölgyi
69dd39afba
fix: do not overwrite correct L1 index on signer startup ( #443 )
...
* fix signer worker
* add logs
* bump version
* Fix
2023-08-06 14:22:02 +02:00
vyzo
94190f0163
feat: sepolia flag and config ( #377 )
...
* add sepolia flag and configuration
* bump patch version
* Update params/version.go
Co-authored-by: Péter Garamvölgyi <peter@scroll.io>
* Update params/config.go
Co-authored-by: Péter Garamvölgyi <peter@scroll.io>
* Update params/config.go
Co-authored-by: Péter Garamvölgyi <peter@scroll.io>
* explicitly set l1.confirmations and l1.sync.startblock for sepolia
* update config
---------
Co-authored-by: Péter Garamvölgyi <peter@scroll.io>
2023-08-04 19:45:39 +02:00
Ho
6b20ce624f
fix: correctly initialize ZkTrieTracer for ccc ( #440 )
...
* fix issue for zktrieTracer not inited
* bump version
---------
Co-authored-by: Péter Garamvölgyi <peter@scroll.io>
2023-08-04 07:54:55 +02:00
Péter Garamvölgyi
26eeb40ea3
fix: use correct hash for ccc write in worker ( #438 )
2023-08-04 04:22:47 +02:00
Péter Garamvölgyi
5611b8296a
refactor: add more ccc logs ( #436 )
...
* refactor: add more ccc logs
* format hashes
* more logs
* more logs
2023-08-03 18:16:32 +02:00
HAOYUatHZ
ef67ff8bbb
fix(miner): fix acc_rows for empty block ( #431 )
...
* Revert "fix(worker): set row consumption for genesis and empty blocks (#428 )"
This reverts commit b51736fd3c .
* fix: fix accRows for empty block
* bump version
* remove log
* fix
* set default accRows as nil explicitly
* fix genesis block
* fix
2023-08-03 13:09:59 +02:00
HAOYUatHZ
60e260b2f1
fix: fix block validator createTraceEnv ( #429 )
2023-08-03 15:56:11 +08:00
Péter Garamvölgyi
b51736fd3c
fix(worker): set row consumption for genesis and empty blocks ( #428 )
...
* fix: initialize row consumption for genesis and empty blocks
* bump version
2023-08-03 09:48:03 +02:00
Péter Garamvölgyi
96d12015e1
fix: decode subcircuit row usage as integer ( #421 )
...
* fix subcircuit row usage type
* bump version
2023-08-02 06:03:18 +02:00
Ho
11b35cd014
feat: upgrade zktrie to v0.6.0 ( #403 )
...
* add domain-spec poseidon hash
* add warning message for deprecated method
* update goimports
* update zktrie to v0.6
* fixes for upgrade
* resume deletion proof
* update alpha genesis since new hash sch eme
* dump zktrie to 0.6
* induce genesis block for scroll sepolia network
* Update version.go
---------
Co-authored-by: HAOYUatHZ <37070449+HAOYUatHZ@users.noreply.github.com>
Co-authored-by: Péter Garamvölgyi <peter@scroll.io>
2023-08-02 10:54:41 +08:00
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
Nazarii Denha
a677ee3ccf
fix(ethapi): change scroll_getBlockByHash ethapi behaviour ( #398 )
...
* fix api behaviour
* update version
* not retrun error in ethclient
* add comment
* modify rowconsumption struct
* fix lint
* change naming
2023-07-20 00:10:34 +08:00
Nazarii Denha
3943547960
feat(rawdb&rpc): add block row consumption rpc ( #388 )
...
* add db api for rowconsumption
* add rpc api for block row consumption
* return nil if rc is is not known
* add method to sdk
* bump version
* small fix
* update version
---------
Co-authored-by: Péter Garamvölgyi <peter@scroll.io>
2023-07-11 22:07:09 +08:00
Nazarii Denha
5eac3a73bc
feat(core/vm): modexp precompiled support also less than 32-bytes inputs ( #393 )
...
* modexp support 32-bytes or less inputs
* change revert string
* bump version
---------
Co-authored-by: Péter Garamvölgyi <peter@scroll.io>
2023-07-10 22:04:14 +08:00
HAOYUatHZ
8c5bf3069f
fix(trace): fix statesAffected in traceLastNAddressAccount ( #367 )
...
* fix(trace): fix
* Update version.go
2023-07-07 10:27:55 +08:00
HAOYUatHZ
3cf5ba882d
feat(trace): add per_tx_storage_trace ( #372 )
...
* 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
* Update version.go
* address comments
---------
Co-authored-by: Ho Vei <noelwei@gmail.com>
2023-07-04 22:21:12 +08:00
Péter Garamvölgyi
38a6a1e964
fix: include L1MessageTx fields in transaction RPC result ( #375 )
...
* fix: include L1MessageTx fields in tx RPC result
* bump version
2023-06-30 15:52:57 +02:00
Péter Garamvölgyi
8c141eb90f
feat(evm): limit ecPairing precompile to use up to 4 inputs ( #373 )
...
* feat(evm): limit ecPairing precompile to use up to 4 inputs
* update test cases
* reorder test functions
2023-06-29 09:22:48 +02:00
Nazarii Denha
e09346ee20
feat(core/vm): revert modexp precompiled contract if input is not u256 ( #361 )
...
* Revert modexp precompiled contract if input is not u256
* bump version
* use specific error
* bump version
* tests
* bump version
* fix lint
* Update version.go
---------
Co-authored-by: Péter Garamvölgyi <peter@scroll.io>
2023-06-28 10:32:26 -07:00